解决在linux中禁用ipv6导致Docker创建容器时无法正确映射ipv6地址后启动失败的问题

『只解决问题,不懂原理系列』

问题复现:

系统中禁用了ipv6,导致docker run创建容器时无法正确映射ipv6地址

1.dockerd启动报错:

failed to read ipv6 net.ipv6.conf.<bridge>.accept_ra bridge=docker0 syspath=/proc/sys/net/ipv6/conf/docker0/accept_ra

2.docker run 增加 -p参数映射地址报错:

Failed to allocate and map port: Error starting userland proxy: listen tcp6 [::]:6379

 

解决思路:

宿主机缺少ipv6目录及文件,重新生成ipv6相关文件即可(同时可禁用ipv6)

 

解决方案:

1.启用ipv6配置:编辑/etc/default/grub文件(后面可通过sysctl.conf禁用ipv6,这里是为了创建ipv6相关目录信息,1=禁用、0=启用)

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ipv6.disable=0"

GRUB_CMDLINE_LINUX="ipv6.disable=0"

 

2.禁用ipv6配置信息:编辑/etc/sysctl.conf,禁用ipv6(1=禁用、0=启用)

net.ipv6.conf.all.disable_ipv6=1

net.ipv6.conf.default.disable_ipv6=1
 

3.重启

reboot

 

部分内容引用:https://blog.csdn.net/weixin_39628498/article/details/111799362

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潘少博

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值