乐趣区

关于docker:74-在swarm集群里通过service部署wordpress

创立一个 overlay 驱动的网络

docker network create -d overlay wordpress
[vagrant@swarm-manager ~]$ docker network ls
NETWORK ID NAME DRIVER SCOPE
q3rp3i79eud7 wordpress overlay swarm

创立 mysql 容器

docker service create --name mysql --env MYSQL_ROOT_PASSWORD=root --env MYSQL_DATABASE=wordpress --network wordpress --mount type=volume,source=mysql-data,destination=/var/lib/mysql mysql

创立 wordpress

docker service create --name wordpress -p 80:80 --env WORDPRESS_DB_PASSWORD=root --env WORDPRESS_DB_HOST=mysql --network wordpress wordpress

查看节点散布

# 服务列表
[vagrant@swarm-manager ~]$ docker service ls
ID NAME MODE REPLICAS IMAGE PORTS
vxz0bfmul9th mysql replicated 1/1 mysql:5.7.22
cpe3wqrsoqxi wordpress replicated 1/1 wordpress:latest *:80->80/tcp

# wordpress 服务的节点散布
[vagrant@swarm-manager ~]$ docker service ps wordpress
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
tnh4f0ldyidl wordpress.1 wordpress:latest swarm-manager Running Running 4 minutes ago

# mysql 服务的节点散布
[vagrant@swarm-manager ~]$ docker service ps mysql
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
jns8bllzbz94 mysql.1 mysql:5.7.22 swarm-work1 Running Running 33 minutes ago

尽管 wordpress 只散布在了 swarm-manager(192.168.205.10)这一个节点上,然而咱们发现应用如下链接拜访,成果都是一样的,是不是很神奇。。。具体起因详见 7.6

http://192.168.205.10/
http://192.168.205.11/
http://192.168.205.12/

在 swarm 模式下,无需装置 etcd,swarm 会主动帮咱们保护好分布式的 overlay 网络

退出移动版