1 拉取redis镜像
docker pull redis
2 Docker挂载配置文件
即将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件;
1)挂载redis的配置文件
2)挂载redis 的持久化文件(为了数据的持久化)
## 创建目录
mkdir -p /home/redis/config
## 创建文件
vi /home/redis/config/redis.conf
- 添加redis.conf内容
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#bind 127.0.0.1
protected-mode no
port 6379
tcp-backlog 511
requirepass 000415
timeout 0
tcp-keepalive 300
daemonize no
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile ""
databases 30
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.aof"
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-max-len 128
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
3 启动redis容器
docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/redis/config/redis.conf:/etc/redis/redis.conf -v /home/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456
# 参数解释:
–restart=always 总是开机启动
-p 6379:6379 将6379端口挂载出去
–name 给这个容器取一个名字
-v 数据卷挂载
-d redis 表示后台启动redis
–appendonly yes 开启redis 持久化
4 通过docker ps指令查看启动状态
docker ps -a |grep myredis # 通过docker ps指令查看启动状态,是否成功.
- 查看此容器30分钟之内的日志情况
docker logs --since 30m myredis
5 容器内部修改设置
- 以redis-cli进入容器
docker exec -it myredis redis-cli
- auth命令验证密码
127.0.0.1:6379> auth 123456
OK
- 查看当前redis有没有设置密码
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"