问题原因

这段时间我一直在学习docker,在昨天我学完后就将虚拟机挂起了,今天开启虚拟机后发现进不去我昨天部署的wordpress页面,经过查资料得知,在虚拟机挂起或重启后都会将IP转发功能关闭。

[root@docker101 ~]#sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 0

我们都知道,容器的数据是通过docker 0(网桥)经过iptables才能访问外网的,一旦关闭ip转发也就无法访问外网了。

解决方法

打开/usr/lib/sysctl.d/00-system.conf,在最后一行加上net.ipv4.ip_forward = 1,然后重启network服务即可访问。

[root@docker101 ~]#cat /usr/lib/sysctl.d/00-system.conf 
# Kernel sysctl configuration file
#
# For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) and
# sysctl.conf(5) for more details.

# Disable netfilter on bridges.
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
net.ipv4.ip_forward = 1    #最后一行加入

#重启网络服务
[root@docker101 ~]#systemctl restart network

测试

修改完成后,输入网址发现我们的问题就已经解决了!

更多推荐