解决外部主机无法访问Docker容器的方法

使用Docker启动了一个tomcat容器,并做了端口映射,但是外部主机仍然无法访问。
编辑centos上的配置文件

vi /etc/sysctl.conf
net.ipv4.ip_forward=1
systemctl restart network

保存以后即可生效,这个配置是开启linux的ip数据包转发功能,允许linux将ip数据包转发到另一个网段的数据上。

例如VMware虚拟机是安装在win10上的,如果使用的NAT模式,则默认两个不同的网段是无法直接通信的。
例如win是192.168.130.xxx
而虚拟机是 192.168.240.xxx
这个时候vmware在win10上安装了一个虚拟网卡,这样才可以使用,此时是只有宿主机才能访问的,其他局域网内的机器是无法访问的。
Docker也是同理,net.ipv4.ip_forward=1 可以看作是在centos 虚拟机上安装了一个网卡,专门用于桥接Docker容器的网络。

你可能感兴趣的:(CI/CD,docker,容器,运维)