最近在docker部署软件的时候,遇到一个问题,为了使容器之间可以通信,然后用了最简单的--net=host这种方法,然后发现从另一台机器上访问服务器的软件访问不了,去掉net=host,外界可以访问软件,但是docker容器之间无法通信了,然后日志显示connecting refused。然后试了一下link和自建网络都不行
最后的解决方案,将防火墙先关掉
//下面一句是查看防火墙状态,running是开着的意思
firewall-cmd --state
//下面一句是关掉防火墙
systemctl stop firewalld.service,然后使用docker运行的时候加上参数
//docker的容器和宿主机共用网络,这样port就不用映射了,容器之间通信也比较方便,但是不安全,且容易占端口
--net=host问题解决了
版权声明:本文为M_amazing原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。