
类型:虚拟化技术
简介:基于操作系统层级的虚拟化技术,将软件与其依赖项打包为容器。
很多人部署Redis只跑一条 docker run redis,当天能用,重启后数据没了才想起来没挂卷。Redis用Docker部署很快,但密码、持久化目录和端口访问至少要提前处理。少一项,后面都可能返工。
目录先建好
mkdir -p /data/redis/data /data/redis/conf
redis.conf 里可以先写:
appendonly yes
appendfsync everysec
requirepass your-strong-password
密码别用弱口令,也别发截图到群里。
Compose启动
services:
redis:
image: redis:7
container_name: redis
command: redis-server /usr/local/etc/redis/redis.conf
ports:
- "6379:6379"
volumes:
- /data/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf
- /data/redis/data:/data
restart: unless-stopped
启动后先看日志:
docker compose up -d
docker logs redis
容器秒退时,优先查配置文件路径。
连接要分两层测
容器内测:
docker exec -it redis redis-cli
auth your-strong-password
ping
返回 PONG 只能说明容器内正常。应用服务器还要测宿主机IP和6379端口。防火墙、安全组没放行时,容器里再正常也连不上。
持久化用重启验证
写入测试键:
set docker:test 1
执行 docker restart redis 后再读。如果值没了,查volumes、AOF和数据目录,不要先怀疑应用。
常见问题
Redis必须设置密码吗?
建议设置,尤其是端口可被其他服务器访问时。
RDB和AOF怎么选?
测试环境可简单处理,更看重数据安全时启用AOF并备份。
修改redis.conf不生效怎么办?
查启动命令和挂载路径。

