关于docker:77-Docker-Stack部署WordPress

56次阅读

共计 1208 个字符,预计需要花费 4 分钟才能阅读完成。

docker-compose.yml 相干字段

  • ENTRYPOINT_MODE 有 vip 模式和 dnssr 模式,vip 模式就是应用多个容器对立的虚构 ip,dnsrr 就是应用实在的 IP,而后轮询 ip,默认应用 vip 模式
  • MODE 一种是 global、一种是 replicated,前者不反对横向扩大,后者反对。
  • PLACEMENT 指定容器部署的节点、操作系统等等。
  • RESOURCES 次要是做一些 CPU、内存等资源的限度
  • RESTART_POLICY 用于设定容器主动重启的条件
  • update_config 用于更新时候的配置

应用 docker-compose.yml 在 swarm 上部署

version: '3'
services:
  web:
    image: wordpress
    ports:
      - 8080:80
    depends_on:
      - mysql
    environment:
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_PASSWORD: root
    networks:
      - wordpress-overlay
    deploy:
      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
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: wordpress
    volumes:
      - mysql-data:/var/lib/mysql
    networks:
      - wordpress-overlay
    deploy:
      mode: global
      placement:
        constraints:
          - node.role == manager
volumes:
  mysql-data:
networks:
  wordpress-overlay:
    driver: overlay

配置部署

docker stack deploy -c docker-compose.yml wordpress

查看散布

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

应用如下三个链接都是能够拜访的

http://192.168.205.10:8080
http://192.168.205.11:8080
http://192.168.205.12:8080

销毁 stack

docker stack rm wordpress

正文完
 0