Docker部署redis

创建redis配置文件

1
2
3
4
5
6
7
8
mkdir -p /data/redis
cat >> /data/redis/redis.conf << EOF
bind 0.0.0.0
daemonize no
protected-mode no
requirepass 2wjbLIPLC2e2KQBp
appendonly yes
EOF
  • daemonize:是否以守护线程方式启动,默认no。
  • appendonly:是否持久化数据,默认no。

拉取镜像并创建容器

1
2
3
4
5
6
docker run --name=redis \
--privileged=true \
-p 6379:6379 \
-v /data/redis:/etc/redis \
-v /data/redis/data:/data \
-d --restart=always maisi/redis:8.4.0 redis-server /etc/redis/redis.conf --appendonly yes
  • --privileged=true:容器内的root用户拥有宿主机root权限,否则容器内root用户只是外部普通用户权限;
  • --appendonly yes:开启数据持久化(如果配置文件中已配置,可忽略)

开放防火墙端口

1
2
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload