一、拉取官方5.0.3镜像
1 |
[root@localhost ~] # docker pull redis:5.0.3 |
下载完成
1
2
3
4
5
6
7
8
9
10 |
[root@localhost ~] # docker pull redis:5.0.3
5.0.3: pulling from library /redis
f7e2b70d04ae: pull complete
421427137c28: pull complete
4af7ef63ef0f: pull complete
b858087b3517: pull complete
2aaf1944f5eb: pull complete
8270b5c7b90d: pull complete
digest: sha256:4be7fdb131e76a6c6231e820c60b8b12938cf1ff3d437da4871b9b2440f4e385
status: downloaded newer image for redis:5.0.3 |
二、创建挂载目录
1、创建挂载文件夹
1
2
3
4 |
[root@localhost ~] # mkdir -p /root/redis/data /root/redis/conf
[root@localhost ~] # cd redis/
[root@localhost redis] # ls
conf data |
2、创建redis.conf
在/root/redis/conf目录中创建文件 redis.conf
1 |
touch redis.conf |
显示目录
1
2
3
4
5
6 |
[root@localhost redis] # cd conf/
[root@localhost conf] # ls
[root@localhost conf] # touch redis.conf
[root@localhost conf] # ls
redis.conf
[root@localhost conf] # |
三、创建redis 容器
1 |
docker run -d --name redis -p 6379:6379 - v /root/redis/conf/redis .conf: /redis .conf - v /root/redis/data : /data redis:5.0.3 redis-server --appendonly yes |
参数说明:
-d 后台运行
-p 端口映射到主机的端口
-v 将主机目录挂载到容器的目录
redis-server –appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
1、启动redis
启动中报错如下:
1
2
3
4 |
[root@localhost ~] # docker run -d --name redis -p 6379:6379 -v /root/redis/conf/redis.conf:/redis.conf -v /root/redis/data:/data redis:5.0.3 redis-server --appendonly yes
9bc537c19ff0ad76727b5215da8cba4223c5ff97f1d9a53585d573ca71fd8c0c
docker: error response from daemon: driver failed programming external connectivity on endpoint redis (fa297144f8d0c958288bb35a94ffbec545d348f2ff9f55a5b573f3d9a0354ace): (iptables failed: iptables --wait -t nat -a docker -p tcp -d 0 /0 --dport 6379 -j dnat --to-destination 172.17.0.3:6379 ! -i docker0: iptables: no chain /target/match by that name.
( exit status 1)). |
说明: docker服务启动时定义的自定义链docker由于某种原因被清掉
重启docker服务及可重新生成自定义链docker
解决方案:
第一步、重启docker;
第二步、启动容器;
1
2 |
systemctl restart docker
docker start foo |
2、容器创建成功,启动redis容器
1 |
docker start redis |
1、启动失败问题:启动容器就会出现iptables: no chain/target/match by that name出错
粗暴解决方案
重启docker
2、正常启动启动显示
四、客户端连接
我用的 redisdesktopmanager
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。
原文链接:https://segmentfault.com/a/1190000021274293
相关文章
- 利用FTP和计划任务自动备份网站数据和数据库 2025-05-27
- 服务器技术之硬件冗余技术 2025-05-27
- 服务器是租用还是服务器托管好? 2025-05-27
- 什么是DNS以及它如何影响服务器? 2025-05-27
- 刀片服务器与机架服务器的区别介绍 2025-05-27
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
-
2025-05-27 51
-
Nginx的作用详解,为什么在Web服务器中Nginx的比例越来越高?
2025-05-26 107 -
“邪恶版”ChatGPT 出现:毫无道德限制,专为“网络罪犯”而生?
2025-05-26 55 -
2025-05-27 24
-
2025-05-25 96