Rancher 中默认运行一个nginx 服务(1个容器),为什么在主机端无法访问该服务?

问题

  Rancher 中默认运行一个nginx服务(1个容器),为什么在主机端无法访问?

步骤

  在Rancher创建nginx服务的页面中,默认运行一个Nginx服务,不做任何端口映射,创建一个Nginx服务(只包含1个Nginx容器),直接在主机端的浏览器上,访问nginx容器的10.42.xx.xx地址,无法访问。

解答

  这样的设置,没有为Nginx服务映射主机端口,运行的nginx容器只能在私有网络中访问,在容器IP地址所属的私有网络中,是可以访问该容器IP地址的80端口的。

  为了验证在私有网络中可以访问Nginx服务,可以再运行一个Alpine容器,通过Rancher页面,可以知道Alpine容器和Nginx容器分配的IP地址。我们可以发现,这个Alpine容器和Nginx容器的IP地址处于同一私有网段,比如10.42.xx.xx/16,因此两个容器之间可以直接通讯

  在Alpine容器中使用apk update && apk add curl命令安装curl工具,在Alpine容器中访问Nginx容器的80端口,执行curl“Nginx容器IP地址” ,可以得到html页面的内容。

  如果要想在主机端访问Nginx容器,必须要在创建nginx服务时,映射一个主机端口到容器端口。容器启动以后,在主机端的浏览器上,就可以访问主机及端口。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值