docker不同容器如何访问
Docker  /  管理员 发布于 7年前   327
docker中不同容器间的访问方法:
虚拟ip访问
安装docker时,docker会默认创建一个内部的桥接网络docker0,每创建一个容器分配一个虚拟网卡,容器之间可以根据ip互相访问。
[root@33fcf82ab4dd /]# [root@CentOS ~]# ifconfig......docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 0.0.0.0 inet6 fe80::42:35ff:feac:66d8 prefixlen 64 scopeid 0x20<link> ether 02:42:35:ac:66:d8 txqueuelen 0 (Ethernet) RX packets 4018 bytes 266467 (260.2 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 4226 bytes 33935667 (32.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0......
运行一个centos镜像, 查看ip地址得到:172.17.0.7
[root@CentOS ~]# docker run -it --name centos-1 docker.io/centos:latest[root@6d214ff8d70a /]# ifconfigeth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.17.0.7 netmask 255.255.0.0 broadcast 0.0.0.0 inet6 fe80::42:acff:fe11:7 prefixlen 64 scopeid 0x20<link> ether 02:42:ac:11:00:07 txqueuelen 0 (Ethernet) RX packets 16 bytes 1296 (1.2 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 8 bytes 648 (648.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
以同样的命令再起一个容器,查看ip地址得到:172.17.0.8
[root@CentOS ~]# docker run -it --name centos-2 docker.io/centos:latest[root@33fcf82ab4dd /]# ifconfigeth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.17.0.8 netmask 255.255.0.0 broadcast 0.0.0.0 inet6 fe80::42:acff:fe11:8 prefixlen 64 scopeid 0x20<link> ether 02:42:ac:11:00:08 txqueuelen 0 (Ethernet) RX packets 8 bytes 648 (648.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 8 bytes 648 (648.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
容器内部ping测试结果如下:
[root@33fcf82ab4dd /]# ping 172.17.0.7PING 172.17.0.7 (172.17.0.7) 56(84) bytes of data.bytes from 172.17.0.7: icmp_seq=1 ttl=64 time=0.205 msbytes from 172.17.0.7: icmp_seq=2 ttl=64 time=0.119 msbytes from 172.17.0.7: icmp_seq=3 ttl=64 time=0.118 msbytes from 172.17.0.7: icmp_seq=4 ttl=64 time=0.101 ms
创建bridge网络
1、安装好docker后,运行如下命令创建bridge网络:docker network create testnet
查询到新创建的bridge testnet。
2、运行容器连接到testnet网络。
使用方法:docker run -it --name <容器名> ---network <bridge> --network-alias <网络别名> <镜像名>
[root@CentOS ~]# docker run -it --name centos-1 --network testnet --network-alias centos-1 docker.io/centos:latest[root@CentOS ~]# docker run -it --name centos-2 --network testnet --network-alias centos-2 docker.io/centos:latest
3、从一个容器ping另外一个容器,测试结果如下:
[root@fafe2622f2af /]# ping centos-1PING centos-1 (172.20.0.2) 56(84) bytes of data.bytes from centos-1.testnet (172.20.0.2): icmp_seq=1 ttl=64 time=0.158 msbytes from centos-1.testnet (172.20.0.2): icmp_seq=2 ttl=64 time=0.108 msbytes from centos-1.testnet (172.20.0.2): icmp_seq=3 ttl=64 time=0.112 msbytes from centos-1.testnet (172.20.0.2): icmp_seq=4 ttl=64 time=0.113 ms
更多相关教程,请关注docker教程栏目。
以上就是docker不同容器如何访问的详细内容,更多请关注其它相关文章!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号