docker跨主机的网络配置方法

1. 首先在master上运行docker swarm init,运行成功后,会提示如下内容

To add a worker to this swarm, run the following command:

    docker swarm join \
    --token SWMTKN-1-1bdjqxs26cnm39s4fmgggailgg6dtntufh948oqex0becihtqh-0vu5hfkjxwzk7mjwkmqle8il6 \
    192.168.0.151:2377

其中token可以使用docker swarm join-token worker再次查看。

2. 然后在slave上运行上面输出的命令

    docker swarm join \
    --token SWMTKN-1-1bdjqxs26cnm39s4fmgggailgg6dtntufh948oqex0becihtqh-0vu5hfkjxwzk7mjwkmqle8il6 \
    192.168.0.151:2377

这样slave就添加到master中了,在master上使用命令 docker node ls可以查看当前集群的主机列表。

3. 接下来创建一个swarm网络,这样docker容器之间可以加入到这个网络里实现互联互通。

docker network create -d overlay --attachable <网络名>

4. 最后,在启动容器的时候,加入到刚刚创建的网络中就完成了,例如

在master上运行

docker run --name node1 -it --network <网络名> debian bash

在slave上运行

docker run --name node2 -it --network <网络名> debian bash

在容器内部,通过node1和node2域名就可以互相访问了。比如在node1中,可以使用ping node2来查看一下可以联通到node2上。

参考链接

  1. http://www.cnblogs.com/atuotuo/p/6951831.html

你可能感兴趣的:(docker跨主机的网络配置方法)