服务器 
首页 > 服务器 > 浏览文章

docker for windows 容器内网通过独立IP直接访问的方法

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

Docker官方推荐我们通过端口映射的方式把Docker容器的服务提供给宿主机或者局域网其他容器使用。一般过程是:

1、Docker进程通过监听宿主机的某个端口,将该端口的数据包发送给Docker容器

2、宿主机可以打开防火墙让局域网其他设备通过访问宿主机的端口进而访问docker的端口

但在实际使用中并不是很方便。

以下在win10环境中队DockerDocker容器通过独立IP暴露给局域网的方法进行记录。

Docker的默认启动方式中,会产生一块虚拟网卡,然后容器内自行分配单独的网卡和IP。可以在宿主机上通过ipconfig命令看到这个虚拟网卡。

docker for windows 容器内网通过独立IP直接访问的方法

打开一个容器,可以看到容器ip地址为自动分配的。

docker for windows 容器内网通过独立IP直接访问的方法

通过宿主机无法ping通

docker for windows 容器内网通过独立IP直接访问的方法

通过配置路由表实现ip互通

查看route print

docker for windows 容器内网通过独立IP直接访问的方法

查看docker 的ip地址

docker for windows 容器内网通过独立IP直接访问的方法

暴露给宿主机的为10.0.75.1

添加路由

route -p add 172.17.0.0 MASK 255.255.255.0 10.0.75.2

docker for windows 容器内网通过独立IP直接访问的方法

重新ping容器地址

docker for windows 容器内网通过独立IP直接访问的方法

现在则可以直接通过ip访问。

由于docker默认采用bridge网络,每次容器启动时自动分配ip,我们可以创建自己的网络bridge1,在创建容器时指定ip,如需独立ip访问则另外增加路由。

route -p add 172.18.12.0 MASK 255.255.255.0 10.0.75.2

如果删除路由:

route delete 172.18.12.0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:VM VirtualBox 虚拟机挂载共享文件夹
下一篇:使用Docker部署Angular项目的方法步骤
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。