首先:拉取Redis 最新镜像
docker pull redis
创建 docker-compose-redis.yaml
version: '3' #设置docker compose 版本
services: #设置services
redis:
image: redis:latest #镜像名称
container_name: redis_demo_test #容器名称
restart: always #重启docker引擎后该容器也重启
ports:
- 63879:6379 #本地端口号与容器内部端口号
volumes: #指定挂载目录
- ./redis.conf:/usr/local/etc/redis/redis.conf:rw #redis.conf文件和data目录分别映射了主机的redis.conf文件和主机的data目录
- ./data:/data:rw
command:
/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf " #使用command可以覆盖容器启动后默认执行的命令。这里启动执行指定的redis.conf文件
创建redis.conf
bind 0.0.0.0
protected-mode no
port 6379 #这个对应的是容器内部的port(端口号)
timeout 0
save 900 1 # 900s内至少一次写操作则执行bgsave进行RDB持久化
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /data
appendonly yes
appendfsync everysec
requirepass 12345678
创建一个空文件夹data
项目结构如图
运行命令
docker-compose -f .\docker-compose-redis.yaml up -d --build
查看是否运行成功
docker ps
运行成功后,进行连接测试
docker exec -it 5dc55 redis-cli