创建一个overlay驱动的网络

docker network create -d overlay wordpress[vagrant@swarm-manager ~]$ docker network lsNETWORK ID NAME DRIVER SCOPEq3rp3i79eud7 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 lsID NAME MODE REPLICAS IMAGE PORTSvxz0bfmul9th mysql replicated 1/1 mysql:5.7.22cpe3wqrsoqxi wordpress replicated 1/1 wordpress:latest *:80->80/tcp# wordpress服务的节点分布[vagrant@swarm-manager ~]$ docker service ps wordpressID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTStnh4f0ldyidl wordpress.1 wordpress:latest swarm-manager Running Running 4 minutes ago# mysql服务的节点分布[vagrant@swarm-manager ~]$ docker service ps mysqlID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTSjns8bllzbz94 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网络

以上就是怎么在swarm集群里通过service部署wordpress的详细内容,更多请关注李烨博客其它相关文章!

转载请注明: » 怎么在swarm集群里通过service部署wordpress