windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

1.最近在学习docker的网络部分,首先我的环境是这样的,windows10上安装了,VMware,VMware启动了一个centos7的虚拟机。在centos7里运行docker  。 采用网桥模式保证windows和centos7网络相同,这里不再赘述配置。

2.首先docker pull nginx 将nginx的最新镜像拉下来,并且后台运行。如下图

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

可以看到此时 command里面,nginx的后台运行已经运行了。

但是在容器外面,即运行docker的centos7里是访问不到容器的web服务的

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

这时候我们需要将容器的端口映射到 centos上,我们删掉容器,重新运行,运行时候指定 -p 宿主机端口:容器端口  做一个映射

图中我将centos7的5000端口映射到了 容器的80端口上,此时我们在centos访问nginx的80端口

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

发现是被拒绝状态,因为我们做了端口映射了,此时我们访问5000端口。显示正常。

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

因为我使用的是网桥模式连接windows,所以windows如果要访问centos7的网络服务只需要访问centos7的IP+5000端口即可。

如下图:

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】

至此完成

windows上安装虚拟机,虚拟机的docker容器端口映射到宿主机以及windows上的访问方法【网桥模式】