分享

Docker映射端口时仅有IPv6无法到IPv4解决方法

 shopnc 2019-11-21

环境

OS: CentOS7 1810
Docker: 19.03.1
Docker-compose: 1.24.1

情况说明

使用阿里云源安装Docker后,使用docker-compose简单编排容器并启动容器,发现所有容器映射到宿主机端口均在IPv6上而IPv4上什么都没有。
经查阅资料后发现早在2013年Git上就有相关问题的讨论了,git issues
这个问题按个人理解好像是Golang的net/http库在Linux下监听网络的问题(如有错误请帮忙指正,谢谢)

解决方法

在服务器上禁用IPv6
使用vim打开/etc/default/grub在第6行中增加ipv6.disable=1 例如:

GRUB_CMDLINE_LINUX="ipv6.disable=1 ..."
复制代码

重新配置grub并重启服务器

$ grub2-mkconfig -o /boot/grub2/grub.cfg
$ reboot
复制代码

等到服务器重启完成后,我们再次使用netstat查看tcp协议(也可以使用lsof -n -i TCP | grep docker),结果如下

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多