大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
情境描述
创建一个docker容器,并进行端口映射。容器启动后,在部署容器的主机上可以访问映射端口,但是其他主机无法访问。
问题排查
出现上述情况,应是请求被拦截
。出现该问题的可能是由于firewall配置异常、ip转发关闭、iptables服务拦截了请求
排查firewall
(1) 使用firewall-cmd --state
查看防火墙运行情况
如果防火墙处于not running
,则可以排除防火墙阻断请求的可能。
如果输出防火墙处于running
则表示防火墙正在运行,需进行下一步排查
(2) 使用firewall-cmd --list-ports
和firewall-cmd --list-services
查看防火墙开放了哪些端口和服务。如果开放的端口中没有包含docker容器对外映射的端口,则可以采取以下解决方式:
- 关闭防火墙服务
systemctl stop firewalld.service
- 添加策略打开指定端口
$ firewall-cmd --add-port=port/tcp --permanent
$ firewall-cmd reload
查看ip转发是否开启
通过cat /proc/sys/net/ipv4/ip_forward
查看ip转发是否开启。如果该值为0
则需要配置其开启
$ echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/180917.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...