31. docker swarm 通过 service 部署 wordpress
1. 创建 一个 overlay 的网络 driver
docker network create -d overlay demo
查看网络列表
docker network ls
2. 创建mysql 的服务
docker service create --name mysql --env MYSQL_ROOT_PASSWORD=root --env MYSQL_DATABASE=wordpress --network demo --mount type=volume,source=mysql-data,destination=/var/lib/mysql mysql:5.7.27
其中
--mount (类似与 volume) type=volume (mount的类型为 volume),source=mysql-data (本地存储数据的位置在 mysql-data内) ,destination=/var/lib/mysql(service 内 存储数据的位置在 /var/lib/mysql)
查看 mysql 镜像 (发现mysql 可拓展 并且 运行在本地 docker-host 上)
docker service ls
docker service ps mysql
3. 创建 wordpress 的 service
docker service create --name wordpress -p 80:80 --network demo --env WORDPRESS_DB_PASSWORD=root --env WORDPRESS_DB_HOST=mysql wordpress
查看 wordpress 镜像 (发现 wordpress 可拓展 并且 运行在本地 docker-host 上)
docker service ls
docker service ps wordpress
查看 docker-host 的 ip 地址 (wordpress 在哪台机器上 就访问 那台机器的ip 地址即可)
访问 192.168.205.10 填写一些基本配置
4. 此时发现 使用 docker-node1 的 ip 和 docker-node2 的 ip 也能访问 wordpress
查看 docker-node1 的网络 和 docker-node2 的网络 发现 demo 的 overlay 网络 会通过 swarm 自动同步过去