指定监听的ip与端口
#命令格式: docker swarm init --listen-addr <MANAGER-IP>:<PORT>
[root@centos-node4 ~]# docker swarm init --listen-addr 192.168.99.101:2377
Swarm initialized: current node (a60d5c3ttymvtozr46uvk17q4) is now a manager. 查看结果
[root@centos-node4 ~]# docker node ls
ID HOSTNAME MEMBERSHIP STATUS AVAILABILITY MANAGER STATUS
a60d5c3ttymvtozr46uvk17q4 * centos-node4 Accepted Ready Active Leader 把swarm-agent1(centos-node5: 192.168.99.102)添加到swarm集群
在swarm-agent1上执行:
#命令格式: docker swarm join <MANAGER-IP>:<PORT>
[root@centos-node5 ~]# docker swarm join 192.168.99.101:2377
This node joined a Swarm as a worker. 在swarm manager查看结果
[root@centos-node4 ~]# docker node ls
ID HOSTNAME MEMBERSHIP STATUS AVAILABILITY MANAGER STATUS
0ypcw58hjlcvr0xqbtizmau62 centos-node5 Accepted Ready Active
a60d5c3ttymvtozr46uvk17q4 * centos-node4 Accepted Ready Active Leader
创建一个overlay 跨主机网络
查看原有网络
[root@centos-node4 ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
abec77415f48 bridge bridge local
e2fff9d572a6 docker_gwbridge bridge local
166bd71f7d0e host host local
9gr6bfff1rv9 ingress overlay swarm
1d2bfc590294 none null local 可以看到在swarm上默认已有一个名为ingress的overlay 网络,默认在swarm里使用,本文会创建一个新的
创建一个新的overlay网络
[root@centos-node4 ~]# docker network create --driver overlay docker-net
aoqs3p835s5glx69hi46ou2dw
[root@centos-node4 ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
abec77415f48 bridge bridge local
aoqs3p835s5g docker-net overlay swarm
e2fff9d572a6 docker_gwbridge bridge local
166bd71f7d0e host host local
9gr6bfff1rv9 ingress overlay swarm
1d2bfc590294 none null local
新的网络(docker-net)已创建
在新的跨主机overlay 网络(docker-net)上创建应用
部署
用alpine镜像在docker-net网络上启动两个实例, 并编排为一组服务
[root@centos-node4 ~]# docker service create --replicas 2 --name helloworld --network=docker-net alpine ping docker.com
5lgdq3ihiez0o7h2uegu4fgd3 查看部署结果










