一、docker的redis的版本
可以去docker hub中查找一下https://hub.docker.com/_/redis?tab=tags是否有本身需要的版本,复制命令行拉取镜像。
或者使用docker search redis查询本身需要的版本
二、docker安装redis
下载Redis镜像 (此命令等同于 : docker pull redis
:latest )
下载指定版本的Redis镜像 (xxx指具体版本号)
使用docker images查看镜像
三、映射目录
可以把redis的一些配置文件存放在/redis/conf目录下,然后在/redis目录下创建一个/data目录,方便后期管理。
创建目录
- mkdir -p /redis/data
- mkdir -p /redis/conf
复制代码
创建文件
四、启动容器
参数阐明:
- docker run \
- -d \
- --name redis \
- -p 6379:6379 \
- --restart unless-stopped \
- -v /redis/data:/data \
- -v /redis/conf/redis.conf:/etc/redis/redis.conf \
- redis:latest \
- redis-server /etc/redis/redis.conf
- --appendonly yes
复制代码 命令描述-d容器在背景运行,并返回容器 ID。–name redis为容器定名为 “redis”,方便以后管理。-p 6379:6379将主机的 6379 端口映射到容器的 6379 端口,这意味着可以通过访问主机的 6379 端口来访问容器内的 Redis 服务器。–restart unless-stopped容器在退出后会主动重启,除非手动停止。-v /redis/data:/data将主机的 /redis/data 目录挂载到容器的 /data 目录,这意味着 Redis 服务器的数据会保存在主机的 /redis/data 目录中。-v /redis/conf/redis.conf:/etc/redis/redis.conf将主机的 /redis/conf/redis.conf 文件挂载到容器的 /etc/redis/redis.conf 文件,这意味着容器内的 Redis 服务器会使用主机上的配置文件。redis:latest指定要运行的镜像是 “redis:latest”,即官方的 Redis 镜像的最新版本。redis-server /etc/redis/redis.conf这是在容器内执行的命令,用于启动 Redis 服务器,并指定使用 /etc/redis/redis.conf 配置文件。–appendonly yes开启 AOF 恒久化模式。这意味着 Redis 服务器会将所有写入操纵记载到一个名为 appendonly.aof 的文件中,即使服务器不测重启,也可以通过读取这个文件来恢复数据。\shell 命令换行 本次执行命令:
- docker run --restart=always \
- -p 6379:6379 \
- --name redis \
- -v /redis/conf/redis.conf:/etc/redis/redis.conf \
- -v /redis/data:/data \
- -d redis:latest redis-server /etc/redis/redis.conf
复制代码 查看正在运行的容器
查看所有的docker容器
表现up状态,启动乐成。
docker日志查看
通过docker进入reids客户端
- docker exec -it redis redis-cli
复制代码
此时redis可以正常使用了,但是还存在问题,redis缓存没有恒久化,重新启动redis就会发现没有数据。
重新启动redis
然后运行docker exec -it redis redis-cli
,去获取 get a 的值,发现a的值不存在。
五、redis恒久化操纵
进入redis.conf配置文件
- vi /redis/conf/redis.conf
复制代码 修改配置文件
- i 进入编辑模式
- 输入 “appendonly yes”,让redis使用AOF的持久化方式。
- Esc 退出编辑模式
- :wq 保存并退出
复制代码 参数阐明
命令功能appendonly yes启动Redis恒久化功能 (默认 no , 所有信息都存储在内存 [重启丢失] 。 设置为 yes , 将存储在硬盘 [重启还在])protected-mode no关闭protected-mode模式,此时外部网络可以直接访问 (docker貌似主动开启了)bind 0.0.0.0设置所有IP都可以访问 (docker貌似主动开启了)requirepass 密码设置密码 重启redis
测试redis是否恒久化乐成
六、redis可视化工具测试毗连
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |