windows下安装docker后,在docker容器中启动程序,无法通过外部ip:port方式访问
最近在使用容器进行启动开发的项目,但发在使用相同的镜像在linux系统下的容器中启动后,可以通过linux IP:port (映射的端口)和容器IP:port访问,而在windows下不能访问的问题。这里说一下原因解决办法在windows中安装docker,实质上是启动了一个Linux虚拟机,在Linux中运行的docker,所以直接使用windowIP:port的方式是访问不到的,这里应该使..
最近在使用容器进行启动开发的项目,但发在使用相同的镜像在linux系统下的容器中启动后,可以通过linux IP:port (映射的端口)和容器IP:port访问,而在windows下不能访问的问题。有两个解决办法
直接在windows宿主机上访问
可以采用LinuxIP:port的方式访问
在windows中安装docker,实质上是启动了一个Linux虚拟机,在Linux中运行的docker,所以直接使用windowIP:port的方式是访问不到的,这里应该使用虚拟机的IP:映射端口的方式访问。
查询windows docker启动机器的IP地址命令:
docker-machine ip default
一般都为 192.168.99.100
这时使用 192.168.99.100:port 就可以成功访问了
需要在与windows相通的其他机器上访问
当我们需要在与windows相通的其他机器上访问 ,就需要使用windowsIP:port的方式了,这时需要对虚拟机进行配置。
打开VM VirtualBox,1.选择default,右键设置–>2.选择左侧菜单“网络”->3.网卡1中点击“高级”展开–>4.点击端口转发打卡端口转发配置界面
在端口转发规则界面进行配置,点击右侧“+”按钮,进行添加端口转发规则,进行填写名称,主机端口,子系统端口,点击下方OK,进行保存即可。保存后即可使用windowsIP:主机端口进行访问。(主机端口对应为windows系统端口;子系统端口为Linux虚拟机的端口,即为容器映射的端口,如在docker中启动容器将容器的8181端口映射到8186即-p 8186:8181
,则这里子系统端口填写8186)
更多推荐
所有评论(0)