容器间互联
Posted Timeless
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了容器间互联相关的知识,希望对你有一定的参考价值。
overlay跨网互联
试验规划
- 配置consul环境
docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
容器启动后,可以通过 http://192.168.195.131:8500 访问 consul
- 修改host1,host2配置
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.195.131:8500 --cluster-advertise=ens33:2376
修改host1,host2的docker.service文件(不同版本的docker的docker.service位置可能不一样),并分别执行:systemctl daemon-reload systemctl restart docker.service
访问192.168.195.131:8500/ui/#/dc1/kv/docker/nodes/ 可以查看两台host信息
- 创建overlay网络
docker network create -d overlay ovnet
此命令在host1,host2任一执行均可,另外一个会自动同步
- 查看overlay网络
docker network ls
ovnet的scope为global
docker network inspect ov_net
subnet:10.0.0.0/24;gateway:10.0.0.1
- 测试互联
docker run -t --network ovnet --name c1 centos
docker run -t --network ovnet --name c2 centos
在host1上运行c1,host2上运行c2(name不可相同)
docker exec c1 ping -c 3 c2
以上是关于容器间互联的主要内容,如果未能解决你的问题,请参考以下文章
Docker 网络详解之使用自定义网络实现容器间通过容器名称互联