1. 拉取镜像
docker pull redis:latest
2. 创建挂载目录
mkdir -r /home/egn/redis/conf mkdir -r /home/egn/redis/data
3. 修改配置文件
新建redis.conf
##节点端口 port 6379 ##允许任何来源 bind 0.0.0.0 ## 是为了禁止公网访问redis cache,加强redis安全的。它启用的条件,有两个:1) 没有bind IP 2) 没有设置访问密码 启用后只能够通过lookback ip(127.0.0.1)访问Redis cache,如果从外网访问,则会返回相应的错误信息 protected-mode no ##开启持久化模式 appendonly yes appendfilename appendonly.aof #开启混合持久化 aof-use-rdb-preamble yes # 文件达到1m时进行重写,然后如果文件大小增长了一倍,也会触发重写。 auto-aof-rewrite-min-size 1mb auto-aof-rewrite-percentage 100 ##AOF 文件和 Redis 命令是同步频率的,假设配置为 always,其含义为当 Redis 执行命令的时候,则同时同步到 AOF 文件,这样会使得 Redis 同步刷新 AOF 文件,造成缓慢。而采用 evarysec 则代表 ## 每秒同步一次命令到 AOF 文件。 appendfsync everysec #pidfile redis.pid #进程pid文件,加port以示区分 pidfile /data/redis/data/redis_6379.pid # 后台运行 ---- docker中使用后台运行将无法启动容器(应该是容器无法检测后台运行进程) # daemonize yes databases 20 #设置容器初始化密码 requirepass test1323
4. 启动容器
docker run -d -p 6379:6379 --name my_redis --privileged=true -v /home/egn/redis/conf/r
5. 修改密码
#进入容器 docker exec -it my_redis /bin/bash #进入redis客户端 redis-cli #查看redis密码 config get requirepass #设置密码 config set requirepass xxx888666