Docker系列器十二:docker swarm三节点创建一个wordpress
阅读原文时间:2021年04月21日阅读:1
1,现在manager创建一个网络:
docker network create -d overlay demo
创建完成后,在node上没有显示。

[root@docker-host ~]# docker network ls
    NETWORK ID          NAME                            DRIVER              SCOPE
    1fd606d8c7ff        bridge                          bridge              local
    zy22adwah6yi        demo                            overlay             swarm
    62202f409594        docker_gwbridge                 bridge              local
    09143343cb33        example-voting-app_back-tier    bridge              local
    f9ed185a159b        example-voting-app_front-tier   bridge              local
    9bcacc5a16b9        flask-redis_default             bridge              local
    da49cac1eddb        host                            host                local
    pjbn7946dtoi        ingress                         overlay             swarm
    51f4cda404e0        none                            null                local
    a40c40ff8d5a        wordpress_default               bridge              local

2,创建一个mysql的service

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

    查看是否创建成功
    docker service ps mysqll
    docker ps

3,创建一个wordpres service

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

    查看:
    docker service ps wordpress

意义:

    通过创建的两个应用:wordpress和mysql,他们分布在不同的节点上,但是是可以相互通信的,
例如:wordpress安装在node1的节点上,mysql安装在node2的节点上,我们通过输入节点2的地址可以安装wordpress,安装完成后,输入node1的节点也是可以正常访问网站的。他们是通过servername相互发现的。

通过查看wordpress和mysql正在运行

mysql运行在node2节点,wordpress是运行在node1节点

这时候查看node2节点时候:

查看node3节点,demo网络已经同步了