上一节说到了docker-swarm的service,创建和操作。scale 进行横向扩展。之前通过docker-compose也部署过,本次就在docker-swarm下部署wordpress。
开始部署
之前讲过Overlay网络,不在同一台机器也可以完成正常的通信。这里就通过overlay网络的方式。
创建overlay的网络
docker network create -d overlay demo
创建mysql
#等待了1个小时才安装好。真求慢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
这里说明下,一开始我没加mysql的版本直接下载的laster版本其实是8.0结果老报无法连接,据说是加密问题,这个坑我填了,直接换成了5.7 完美运行
创建wordpress
#这个比较快,安装wordpressdocker service create --name wordpress -p 80:80 --env WORDPRESS_DB_PASSWORD=root --env WORDPRESS_DB_HOST=mysql --network demo wordpress
可以看出来 mysql在worker2机器上运行,wordpress在manager这个机器上运行
运行wordpress
发现一个问题:明明wordpress在manager这个机器上运行 也就是172.28.128.3这个机器,结果是
172.28.128.5
172.28.128.4
172.28.128.3
这3个地址都可以访问,这是为什么呢? 这个问题下次我来解答吧
直接我们在manager里面创建了network demo
现在看看worker1 和worker2 里面有没有这个demo
image.png
PS :不知道大家还有没有影响讲docker的多机网络的时候,多机的overlay网络的时候,使用的第三方的kv的外置的第三方的存储etcd。我们在用了swarm就不需要这个第三方了,整个这块是swarm自己来维护的,swarm的底层机制会同步网络的创建。最后对于所有的clus节点都可以可以访问service的wordpress的问题,下次在说吧。
作者:IT人故事会
链接:https://www.jianshu.com/p/28f42254f9ee
共同学习,写下你的评论
评论加载中...
作者其他优质文章