第一步:检查防火墙是否关闭
systemctl status firewalld 检查防火墙状态
systemctl disable firewalld 永久关闭防火墙
第二步:检查转发规则是否为 1
输入命令:sysctl net.ipv4.ip_forward
如果返回为“net.ipv4.ip_forward = 1”则表示没问题
如果为0或者是其他结果
解决方法:vi /etc/sysctl.conf或者vi /usr/lib/sysctl.d/00-system.conf
添加如下代码:
net.ipv4.ip_forward=1
重启network服务 systemctl restart network
现在可以试试重启容器然后尝试是否能够访问成功,但是我的还是不行,所以百度又搜了一波
如果咱们一样,就接着下一步:
第三步:重建docker0网桥
(1)停止所有容器,停止docker服务
systemctl stop docker.socket 停止docker服务
docker stop $(docker ps -q) 停止所有容器
(2)重建docker0网桥 (每一步都别少)
[root@master docker]# yum install bridge-utils -y
[root@master docker]# ip link set dev docker0 down
[root@master docker]# brctl delbr docker0
[root@master docker]# brctl addbr docker0
[root@master docker]# ip addr add 172.16.10.1/24 dev docker0
[root@master docker]# ip link set dev docker0 up
[root@master docker]# ip addr
网桥重建成功
(3)重新启动docker服务和容器
systemctl start docker.socket 重启docker服务
docker start [ID或者name] 启动docker容器
标签:reset,docker0,ip,56,failure,systemctl,master,docker,root
From: https://www.cnblogs.com/gxhh-lzh/p/16955855.html