🗣 Wd提问: redis服务器搭建
🤖 Ai回答: 搭建 Redis 服务器是一个非常常见的任务。下面我将为您提供一个从零开始的、详细的 Redis 服务器搭建指南,涵盖了 在 Linux 上编译安装 和 使用 Docker 快速部署 两种主流方式。
准备工作
1、 一台 Linux 服务器:本教程以 CentOS 7/8 或 Ubuntu 20.04/22.04 为例。macOS 也可以使用类似步骤。
2、 基本的命令行操作知识。
方法一:在 Linux 上编译安装(推荐用于学习和生产环境)
这种方式能让你对 Redis 的配置和依赖有更深入的了解。
步骤 1:安装编译工具和依赖
对于 CentOS/RHEL/Fedora:
bash
sudo yum update
sudo yum install -y gcc gcc-c++ make wget
对于 Ubuntu/Debian:
bash
sudo apt update
sudo apt install -y build-essential wget tcl
步骤 2:下载并解压 Redis 源码
访问 [Redis 官网下载页面](https://redis.io/download/) 获取最新稳定版的下载链接。
bash
进入临时目录,下载源码包
cd /tmp
wget https://download.redis.io/redis-stable.tar.gz
解压
tar -xzvf redis-stable.tar.gz
进入解压后的目录
cd redis-stable
步骤 3:编译和安装
bash
编译,这个过程可能需要几分钟
make
运行测试套件以确保编译正确(可选但推荐)
make test
安装到系统目录,默认是 /usr/local/bin
sudo make install
步骤 4:创建 Redis 配置文件和工作目录
Redis 默认不附带配置文件,我们需要手动创建。
bash
创建配置文件和持久化数据目录
sudo mkdir /etc/redis
sudo mkdir /var/lib/redis
复制源码包中的示例配置文件
sudo cp /tmp/redis-stable/redis.conf /etc/redis/
设置目录权限(假设我们创建一个专门的redis用户)
sudo adduser system group no-create-home redis
sudo chown redis:redis /var/lib/redis
sudo chmod 770 /var/lib/redis
步骤 5:修改 Redis 配置文件
使用 `vim` 或 `nano` 编辑 `/etc/redis/redis.conf`。
bash
sudo vim /etc/redis/redis.conf
找到并修改以下关键配置项:
ini
允许后台运行
daemonize yes
设置进程ID文件位置
pidfile /var/run/redis/redis-server.pid
设置日志文件位置
logfile /var/log/redis/redis-server.log
设置持久化数据目录 (RDB和AOF文件)
dir /var/lib/redis
绑定IP,0.0.0.0表示允许所有IP连接,生产环境建议设置为服务器内网IP
bind 0.0.0.0
设置密码(可选但强烈推荐用于生产环境)
requirepass your_strong_password_here
保护模式,如果设置了密码和bind,可以关闭。如果bind是127.0.0.1,保持开启是安全的。
protected-mode no
步骤 6:创建 Systemd 服务单元文件(用于管理服务)
创建文件 `/etc/systemd/system/redis.service`:
bash
sudo vim /etc/systemd/system/redis.service
写入以下内容:
ini
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecReload=/bin/kill -USR2 $MAINPID
TimeoutStopSec=0
Restart=always
RestartSec=3
确保目录存在
PermissionsStartOnly=true
ExecStartPre=/bin/mkdir -p /var/run/redis
ExecStartPre=/bin/chown redis:redis /var/run/redis
ExecStartPre=/bin/chmod 755 /var/run/redis
[Install]
WantedBy=multi-user.target
步骤 7:启动 Redis 服务并设置开机自启
bash
重新加载 systemd 配置
sudo systemctl daemon-reload
启动 Redis
sudo systemctl start redis
设置开机自启
sudo systemctl enable redis
检查服务状态
sudo systemctl status redis
如果状态显示为 `active (running)`,恭喜你!Redis 服务器已经成功启动。
步骤 8:测试连接
使用 Redis 客户端 `redis-cli` 进行连接测试。
bash
如果没设密码
redis-cli
如果设置了密码,使用 -a 参数(不推荐,密码会暴露在历史记录中)
redis-cli -a your_strong_password_here
更安全的带密码连接方式(交互式输入)
redis-cli
进入后执行
auth your_strong_password_here
测试命令
127.0.0.1:6379 set test Hello Redis
OK
127.0.0.1:6379 get test
Hello Redis
127.0.0.1:6379 exit
方法二:使用 Docker 快速部署(推荐用于开发和测试)
这种方式简单快捷,非常适合快速搭建测试环境或使用容器化部署。
步骤 1:安装 Docker
请参考 Docker 官方文档安装 Docker Engine。
步骤 2:拉取 Redis 官方镜像
bash
sudo docker pull redis:latest
步骤 3:运行 Redis 容器
简单运行(无密码):
bash
sudo docker run -d name some-redis -p 6379:6379 redis
推荐方式(带密码和持久化):
bash
创建本地数据目录
mkdir -p /home/your_user/redis/data
运行容器
sudo docker run -d \
name some-redis \
-p 6379:6379 \
-v /home/your_user/redis/data:/data \
-e REDIS_PASSWORD=your_strong_password_here \
redis:latest redis-server requirepass ${REDIS_PASSWORD} appendonly yes
参数解释:
`-d`:后台运行。
`name some-redis`:给容器起个名字。
`-p 6379:6379`:将主机的 6379 端口映射到容器的 6379 端口。
`-v /home/your_user/redis/data:/data`:将主机目录挂载到容器内,用于持久化 AOF 文件。
`-e REDIS_PASSWORD=...`:设置环境变量。
`requirepass ...`:Redis 启动参数,设置密码。
`appendonly yes`:启用 AOF 持久化。
步骤 4:测试 Docker 版的 Redis
bash
连接到容器内的 Redis
sudo docker exec -it some-redis redis-cli
在CLI中认证并测试
127.0.0.1:6379 auth your_strong_password_here
OK
127.0.0.1:6379 set docker_test It works!
OK
127.0.0.1:6379 get docker_test
It works!
安全配置和优化建议(生产环境必看)
1、 防火墙:确保服务器的防火墙只允许可信 IP 访问 6379 端口。
bash
CentOS (firewalld)
sudo firewall-cmd permanent add-rich-rule='rule family=ipv4 source address=192.168.1.0/24 port port=6379 protocol=tcp accept'
sudo firewall-cmd reload
Ubuntu (ufw)
sudo ufw allow from 192.168.1.0/24 to any port 6379
2、 强密码:`requirepass` 一定要设置一个非常复杂的密码。
3、 重命名危险命令:在 `redis.conf` 中,可以禁用或重命名 FLUSHDB、FLUSHALL、CONFIG 等危险命令,防止误操作或恶意攻击。
ini
rename-command FLUSHDB
rename-command FLUSHALL
rename-command CONFIG a-very-long-random-string
4、 监控:考虑使用 `redis-cli monitor` 或更专业的监控工具(如 Prometheus)来监控 Redis 性能。
总结
方法一(编译安装):可控性强,适合对系统和 Redis 有深入了解的用户,常用于生产环境。
方法二(Docker):部署简单、隔离性好、易于维护和迁移,非常适合开发、测试和云原生环境。
您可以根据自己的需求和熟悉程度选择合适的方法。对于初学者,建议先从 Docker 方式开始体验。
📣 商家广告:





0
IP地址: 4.144.202.68
搜索次数: 0
提问时间: 2025-11-08 13:45:37
🛒 域名购买:
757.net.cn
8.hi.cn
v.jl.cn
80.gs
84.gs
7773.com.cn
kb.gs
51.biz
827.net.cn
te.biz
❓️ 热门提问:
智慧云服务器
关键词优化云优CMS SEO
企业网站建设公司有哪些
全国vps
便宜的云服务器购买
免费国内服务器试用
co.jp域名
美国vps不限流量
荷兰免费vps
云主机登录
豌豆Ai站群搜索引擎系统
🌐 域名评估:
su7.baby
pp.gz.cn
rr.sx.cn
oppo.college
76.gold
pamv.cn
826.net.cn
feichai.com
evtoltower.com
su7.hl.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
软件开发平台
广州番禺月饼厂
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。