浅谈docker中的网络配置
2021/8/3 23:08:05
本文主要是介绍浅谈docker中的网络配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.docker中网络配置的说明
当 Docker 启动时,会自动在主机上创建一个 docker0
虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机。它会在挂载到它的网口之间进行转发。
同时,Docker 随机分配一个本地未占用的私有网段(在 RFC1918 中定义)中的一个地址给 docker0
接口。比如典型的 172.17.42.1
,掩码为 255.255.0.0
。此后启动的容器内的网口也会自动分配一个同一网段(172.17.0.0/16
)的地址。
当创建一个 Docker 容器的时候,同时会创建了一对 veth pair
接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包)。这对接口一端在容器内,即 eth0
;另一端在本地并被挂载到 docker0
网桥,名称以 veth
开头(例如 vethAQI2QT
)。
通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。Docker 就创建了在主机和所有容器之间一个虚拟共享网络。
2.docker 网桥的使用
(1)查看docker中的网桥
docker network ls
(2)创建网桥
docker network create -d bridge 网桥名 docker network create 网桥名 例子:docker network create javaApplication
![(https://www.www.zyiz.net/i/ll/?i=077df650a92c42139e1e1a2e37b742d5.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI0MjgwMTI1,size_16,color_FFFFFF,t_70)
(3)删除网桥
docker network rm 网桥名 例子:docker network rm javaApplication
(4)查看网桥的详细信息
docker inspect 网桥名 例子:docker inspect javaApplication
(5)指定网桥启动一个容器
使用参数 --network 网桥名 例子:docker run -d --network javaApplication -p 8081:8080 --name mytomcat -v my-col:/usr/local/tomcat/webapps tomcat `注意:一旦指定网桥后--name指定名字就是主机名,多个容器指定在同一个网桥时,可以在任意一个容器中使用主机名与容器进行互通`
进入mytomcat02容器内部,访问mytomcat01容器的数据
这篇关于浅谈docker中的网络配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14Docker端口:你真的公开了哪些东西?
- 2024-11-14用DOCKER在家里的实验室里搞些酷炫的玩意儿
- 2024-11-05掌握Docker:高效安全的十大最佳实践
- 2024-11-05在 Docker Compose 中怎么设置端口映射-icode9专业技术文章分享
- 2024-11-05在 Docker Compose 中怎么设置环境变量-icode9专业技术文章分享
- 2024-11-04Docker环境部署项目实战:新手入门教程
- 2024-11-04Docker环境部署资料:新手入门教程
- 2024-11-01Docker环境部署教程:新手入门指南
- 2024-11-01超越Docker:苹果芯片上的模拟、编排和虚拟化方案讲解
- 2024-11-01Docker环境部署:新手入门教程