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

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

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

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

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

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

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

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-猿站网-插图

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

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-1猿站网-插图

通过宿主机无法ping通

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-2猿站网-插图

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

查看route print

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-3猿站网-插图

查看docker 的ip地址

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-4猿站网-插图

暴露给宿主机的为10.0.75.1

添加路由

?
1
route -p add 172.17.0.0 mask 255.255.255.0 10.0.75.2

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-5猿站网-插图

重新ping容器地址

%小知识:docker for windows 容器内网通过独立IP直接访问的方法-6猿站网-插图

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

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

?
1
route -p add 172.18.12.0 mask 255.255.255.0 10.0.75.2

如果删除路由:

?
1
route delete 172.18.12.0

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

原文链接:https://www.cnblogs.com/brock0624/p/9788710.html

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Docker部署FastDFS的实现方法

2023-3-31 15:57:03

建站知识

小知识:DockerToolBox文件挂载的实现代码

2023-3-31 16:11:48

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索