无法访问docker上运行的nginx

项目场景:

在公司的环境,终端没有直接连接外网的权限,需要通过网络代理。


问题描述

面对公司的环境,我给虚拟机全局、docker和docker容器都配置了网络代理,成功运行nginx容器之后,却发现宿主机无法访问到nginx。


原因分析:

期初我以为是IPv4 转发没有开启的原因,

$ vi /etc/sysctl.conf

在末尾插入

net.ipv4.ip_forward = 1

执行sysctl -p指令让其生效

$ sysctl -p

但是依然无法访问。之后又在论坛里各种查询,但是没有找到能够解决问题的方案。

我尝试着把网络从公司内网切换成自己的热点,发现nginx可以访问到,可以断定是代理设置的问题。


解决方案:

重复的切换了几次网络,我恍然大悟。

原来是我在代理设置中没有把虚拟机IP设置为无需代理,这导致我一直都是通过代理访问自己的局域网。

于是我在宿主机上的把虚拟机IP设置到了无需代理的域名中,果然问题得到了解决。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值