docker swarm Dockerstack 部署 wordpress

1、查看 docker compose depoly 语法
  官网地址 : https://docs.docker.com/compose/compose-file/#deploy

2、docker-compose.yml

# docker compose api 版本
version: '3'

services:
  # 定义了 两个 service 分别是 名字分别是 wordpress 和 mysql
  web:
    image: wordpress
    ports:
       #本地 8080 端口 映射 容器 80 端口
      - 8080:80
    environment:
      # wordpress 连接数据库 的 host 为 mysql , passwword 为 root 类似于 -e
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_PASSWORD: root
    networks:
      - my-network
    depends_on:
      - mysql
    deploy:
      # 可以进行横向拓展 初始化节点为3个
      mode: replicated
      replicas: 3
      # 重启政策
      restart_policy:
        condition: on-failure
        delay: 5s
        max_attempts: 3
      #更新政策
      update_config:
        parallelism: 1
        delay: 10s

  mysql:
    image: mysql:5.7.27
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: wordpress
    volumes:
      #外部 mysql-data 挂载到 容器内的 /var/lib/mysql
      - mysql-data:/var/lib/mysql
    networks:
      #指定连接 的网络 为 my-network
      - my-network
    deploy:
      # mysql 节点全局只有一个,不可以横向拓展
      mode: global
      # 只能部署到 manager 节点
      placement:
        constraints:
          - node.role == manager

volumes:
  mysql-data:
networks:
  my-network:
    driver: overlay

3、部署
在swarm模式下部署,用stack
docker stack deploy wordpress

[vagrant@swarm-manager ~]$ docker stack deploy wordpress --compose-file=docker-compose.yml

查看部署容器数量:

[vagrant@swarm-manager ~]$ docker stack ls
NAME                SERVICES            ORCHESTRATOR
wordpress           2                   Swarm

查看 容器部署具体细节:

[vagrant@swarm-manager ~]$ docker stack ps wordpress
ID                  NAME                                        IMAGE               NODE                DESIRED STATE       CURRENT STATE                ERROR               PORTS
jz52d0i03gba        wordpress_mysql.p61nqttz7jeq5gol5o9tyeuio   mysql:5.7.27        swarm-manager       Running             Running about a minute ago
bs5n78dj44j0        wordpress_web.1                             wordpress:latest    swarm-worker2       Running             Running about a minute ago
vivx538ld6em        wordpress_web.2                             wordpress:latest    swarm-manager       Running             Running about a minute ago
js5klc67ffo3        wordpress_web.3                             wordpress:latest    swarm-worker1       Running             Running 2 minutes ago

查看 各个 sevices 的情况:

[vagrant@swarm-manager ~]$ docker stack services  wordpress
ID                  NAME                MODE                REPLICAS            IMAGE               PORTS
otxulx0kqmj5        wordpress_web       replicated          3/3                 wordpress:latest    *:8080->80/tcp
uuzdowxst3o8        wordpress_mysql     global              1/1                 mysql:5.7.27

4、浏览器访问:
任意一台ip访问即可。

http://192.168.205.10:8080/

5、删除wordpress

[vagrant@swarm-manager ~]$ docker stack rm stop wordpress
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值