解决虚拟机挂起后再恢复后Docker部署的应用无法连接问题,
解决虚拟机挂起后再恢复后Docker部署的应用无法连接问题,
目录
- 使用netstat -ntlp命令查看端口状态
- 修改配置文件
- 重启网络服务
- 验证效果
- 如果还不能访问怎么办?
- 总结
使用netstat -ntlp命令查看端口状态
可以看到监听的是tcp的ipv6的端口,所以需要配置ipv4
[root@zjj101 2m-2s-async]# netstat -ntlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1224/mysqld tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 942/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1106/master tcp6 0 0 :::9876 :::* LISTEN 78614/java tcp6 0 0 :::22 :::* LISTEN 942/sshd tcp6 0 0 ::1:25 :::* LISTEN 1106/master
修改配置文件
root@zjj101 2m-2s-async]# vi /usr/lib/sysctl.d//00-system.conf
00-system.conf 文件添加内容: net.ipv4.ip_forward = 1 ,然后 esc !wq 保存
说明:
net.ipv4.ip_forward
等于0
表示不开启,为1
表示开启。
00-system.conf 文件内容:
# Kernel sysctl configuration file # # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details. # Disable netfilter on bridges. net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0 # 启用ip转发功能 net.ipv4.ip_forward = 1
重启网络服务
命令: systemctl restart network
# 重启服务 [root@zjj101 2m-2s-async]# systemctl restart network # 查看配置是否生效,如果返回为“net.ipv4.ip_forward = 1”则表示成功 [root@zjj101 2m-2s-async]# sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 1
验证效果
此时访问一下,我这边发现可以访问了,即使 虚拟机再次挂起,再恢复,也能访问了
如果还不能访问怎么办?
重启Docker里面的container
# 查看docker container ,发现两个都是Exited 状态,这不正常,下面开始重启 [root@zjj101 2m-2s-async]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8910b880038a styletang/rocketmq-console-ng "sh -c 'java $JAVA_O…" 2 days ago Exited (137) 2 minutes ago gifted_johnson e827d21c2efe uifd/ui-for-docker "/ui-for-docker" 2 days ago Exited (2) 2 minutes ago docker-web # 重启docker CONTAINER ID 为 8910b880038a 的 CONTAINER [root@zjj101 2m-2s-async]# docker restart 8910b880038a 8910b880038a # 重启docker CONTAINER ID 为 e827d21c2efe的 CONTAINER [root@zjj101 2m-2s-async]# docker restart e827d21c2efe e827d21c2efe
上面步骤做完了,不出意外基本就可以访问了。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持PHP之友。
您可能感兴趣的文章:- 如何在IDE部署springboot项目(有swagger和无swagger都是一样的)到服务器或者虚拟机上的docker
- 一台虚拟机基于docker搭建大数据HDP集群的思路详解
- docker镜像与传统vm虚拟机区别及分析
- Docker安装阿里云服务器和在虚拟机安装遇到的坑(问题小结)
- mysql安装navicat之后,出现2059,Authentication plugin及本地链接虚拟机docker,远程链接服务器
- CentOS7虚拟机安装并配置docker套件
评论暂时关闭