方式一:通过docker run命令(推荐)
1. 创建目录和配置文件
# 创建Redis数据目录
mkdir -p /d/docker/redis/data
mkdir -p /d/docker/redis/conf
# 创建配置文件
cd /d/docker/redis/conf
notepad redis.conf
2. 基本配置文件内容(redis.conf):
# Redis监听的端口
port 6379
# 允许远程连接(注释掉或改为 0.0.0.0)
bind 0.0.0.0
# 保护模式关闭
protected-mode no
# 持久化策略
save 900 1
save 300 10
save 60 10000
# 密码设置(可选)
# requirepass yourpassword
# 日志级别
loglevel notice
# 日志文件位置
logfile ""
# 数据库数量
databases 16
# 最大内存
maxmemory 1gb
# 内存淘汰策略
maxmemory-policy allkeys-lru
3. 运行Redis容器
docker run -d \
--name redis \
-p 6379:6379 \
-v /d/docker/redis/data:/data \
-v /d/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf \
redis:latest \
redis-server /usr/local/etc/redis/redis.conf
方式二:使用Docker Compose(推荐用于开发环境)
1. 创建docker-compose.yml
version: '3.8'
services:
redis:
image: redis:latest
container_name: redis
ports:
- "6379:6379"
volumes:
# 挂载配置文件
- ./redis/conf/redis.conf:/usr/local/etc/redis/redis.conf
# 挂载数据目录
- ./redis/data:/data
command: redis-server /usr/local/etc/redis/redis.conf
restart: unless-stopped
2. 创建目录结构
# 创建项目目录
mkdir redis-docker
cd redis-docker
# 创建子目录
mkdir -p redis/conf redis/data
# 创建配置文件
notepad redis/conf/redis.conf
3. 启动服务
# 后台启动
docker-compose up -d
# 查看日志
docker-compose logs -f redis
# 停止服务
docker-compose down
方式三:Docker Desktop界面操作
打开Docker Desktop
进入Containers页面
点击"Add Container"
配置参数:
- Image:
redis:latest
- Container name:
redis
- Ports:
6379:6379
- Volumes: 添加两个挂载
- Host path:
/d/docker/redis/conf/redis.conf
Container path: /usr/local/etc/redis/redis.conf
- Host path:
/d/docker/redis/data
Container path: /data
- Command:
redis-server /usr/local/etc/redis/redis.conf
验证安装
1. 查看容器状态
docker ps
docker logs redis
2. 进入Redis容器测试
# 进入容器
docker exec -it redis redis-cli
# 在Redis CLI中测试
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set test "hello"
OK
127.0.0.1:6379> get test
"hello"
3. 查看配置文件是否生效
# 检查配置是否加载
docker exec redis cat /usr/local/etc/redis/redis.conf | head -10
配置文件常用选项说明
# 安全相关
requirepass "yourpassword" # 设置密码
rename-command FLUSHDB "" # 禁用危险命令
rename-command FLUSHALL ""
# 性能优化
maxmemory 1gb # 最大内存限制
maxclients 10000 # 最大客户端连接数
timeout 300 # 客户端超时时间(秒)
# 持久化
appendonly yes # 开启AOF持久化
appendfsync everysec # AOF同步策略
# 主从复制(可选)
# replicaof 192.168.1.100 6379
# masterauth "masterpassword"
注意事项
Windows路径问题:Docker Desktop使用
/d/而不是
D:/
配置文件权限:确保配置文件有读取权限
数据持久化:挂载
/data目录确保数据不会丢失
密码安全:生产环境一定要设置密码
版本选择:建议使用特定版本如
redis:7.2而不是
latest
完整示例目录结构
redis-docker/
├── docker-compose.yml
└── redis/
├── conf/
│ └── redis.conf
└── data/
这种方式可以确保Redis配置和数据都持久化在本地,便于管理和备份。