解决虚拟机挂起重连后无法连接docker容器的问题

问题描述

最近在docker中部署各种容器时,遇到一个问题:每次挂起虚拟机恢复后,就无法连接docker中的容器了,必须要重新启动容器才能正常连接,非常麻烦,查阅各种资料后,解决方法如下

1、关闭防火墙

由于我是学习环境,所以直接关闭防火墙了,这样就不用每次部署容器时一个个去开放端口,这一步根据自己需要来

# 关闭防火墙
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld

2、修改ipv4转发状态

首先打开配置文件

vi /usr/lib/sysctl.d/00-system.conf

在这里插入图片描述
添加如下信息

net.ipv4.ip_forward = 1

保存退出后,重启网络服务

systemctl restart network

之后查看ipv4转发状态

sysctl net.ipv4.ip_forward

显示 net.ipv4.ip_forward=1 则成功
在这里插入图片描述

3、将docker的网络接口设置为不被NetworkManager管理

这一步参考了StackOverflow上的一篇帖子:

https://stackoverflow.com/questions/57874055/cant-connect-to-docker-after-resuming-vm

新建一个配置文件

vi /etc/NetworkManager/conf.d/10-unmanage-docker-interfaces.conf

在文件中添加如下内容

[keyfile]
unmanaged-devices=interface-name:docker*;interface-name:veth*;interface-name:br-*;interface-name:vmnet*;interface-name:vboxnet*

保存退出后,重启NetworkManager

systemctl restart NetworkManager

完成上面三步后,就算挂起虚拟机重连,也能正常访问docker中的容器了

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值