你好,游客 登录 注册 搜索
背景:
阅读新闻

外部网络通过端口映射访问部署在虚拟机里Docker中的Web应用

[日期:2017-06-14] 来源:Linux社区  作者:qingmiao [字体: ]

前文说明:

Windows主机 IP:10.100.70.135

Linux 虚拟机  IP:192.168.233.129

Docker容器  IP:172.17.0.11

为方便测试使用,通常我们选择在Windows主机中安装虚拟机这(这里选的是VMware Workstation),在虚拟机中部署Docker容器。而我们部署在Docker中的容器外部网络(和Windows同一层的网络)是无法访问的。

为了解决这个问题,可以采用一下这种方案。

一、创建容器时可以选择docker自带的端口映射功能能够跨网络实现172.17.0.11与192.168.233.129的通信。参考命令如下,docker的其他使用方法这里不再赘述

docker run -it -p 8003:80 --name nginx1  cariden/CentOS6.7 /bin/bash

这里我们可以通过访问192.168.233.129的8003端口映射到172.17.0.11的80端口,也就是可以直接访问nginx服务

在docker中部署一个外部服务以供访问,并创建一个简单索引页

二、采用VMware自带的虚拟网络编辑器实现外部网络访问虚拟机内的服务

1.点击”编辑“->”虚拟网络编辑器“,如图

2.选择”NAT“,然后点击”NAT设置“,如图。

3.接下来点击”添加“,让访问主机的8004端口映射到虚拟机里8003端口。

4.在弹出来的界面中分别填入主机端口,虚拟机IP,虚拟机端口,如图

5.确定后,我们就将虚拟机中的80号端口映射到宿主机的8086号端口了。可以外部网络测试了,选择和主机同一层的其他机器做测试就可以了。

6.测试通过!

注:如果以上步骤操作还是不能访问,考虑一下防火墙的问题,可以在防火墙入口规则里开放8004端口,这里为了便于测试我把防火墙关掉了。

更多Docker相关教程见以下内容

Docker安装应用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm

Ubuntu 14.04安装Docker  http://www.linuxidc.com/linux/2014-08/105656.htm

Ubuntu 15.04下安装Docker  http://www.linuxidc.com/Linux/2015-07/120444.htm

Docker 安装实例 http://www.linuxidc.com/Linux/2017-04/142666.htm

Docker 创建基础镜像  http://www.linuxidc.com/Linux/2017-05/144112.htm

在 Ubuntu 15.04 上如何安装Docker及基本用法 http://www.linuxidc.com/Linux/2015-09/122885.htm

Ubuntu 16.04上Docker使用手记 http://www.linuxidc.com/Linux/2016-12/138490.htm

使用Docker分分钟启动常用应用  http://www.linuxidc.com/Linux/2017-04/142649.htm

Ubuntu 16.04下Docker修改配置文件不生效解决办法  http://www.linuxidc.com/Linux/2017-05/143862.htm 

Docker 的详细介绍请点这里
Docker 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-06/144753.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款