Advertisement
Guest User

app-compose.yml

a guest
Jul 7th, 2021
1,090
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 4.61 KB | None | 0 0
  1. # DOCKER SERVICE
  2. ---
  3. version: "3.5"
  4. services:
  5.   wp-bar:
  6.     image: registry.stage.mydomain.com/foo/wp-bar:latest
  7.     networks:
  8.       foo_stage_network:
  9.       wp-bar-backend:
  10.         aliases:
  11.          - wp
  12.     ports:
  13.      - 80
  14.     volumes:
  15.      - ./wp-content:/var/www/html/wp-content
  16.     secrets:
  17.       - source: db.pass
  18.       - source: db.user
  19.       - source: db.name
  20.     environment:
  21.       WORDPRESS_DEBUG: "0"
  22.       WORDPRESS_DB_HOST: "${WORDPRESS_DATABASE_HOST:-db}"
  23.       WORDPRESS_DB_PASSWORD_FILE: "/run/secrets/db.pass"
  24.       WORDPRESS_DB_USER_FILE: "/run/secrets/db.user"
  25.       WORDPRESS_DB_NAME_FILE: "/run/secrets/db.name"
  26.       WORDPRESS_TABLE_PREFIX: "wp_"
  27.       VIRTUAL_HOST: "mydomain.com"
  28.       VIRTUAL_PORT: "80"
  29.     deploy:
  30.       labels:
  31.        - "traefik.http.middlewares.https_redirect.redirectscheme.permanent=true"
  32.         - "traefik.http.middlewares.https_redirect.redirectscheme.scheme=https"
  33.         - "traefik.http.middlewares.testHeader.headers.framedeny=true"
  34.         - "traefik.http.middlewares.testHeader.headers.sslredirect=true"
  35.         - "traefik.http.routers.bar-secured.entrypoints=https"
  36.         - "traefik.http.routers.bar-secured.rule=Host(`mydomain.com`)"
  37.         - "traefik.http.routers.bar-secured.tls=true"
  38.         - "traefik.http.routers.bar-secured.tls.certresolver=default"
  39.         - "traefik.http.routers.bar.middlewares=https_redirect"
  40.         - "traefik.http.routers.bar.rule=Host(`mydomain.com`)"
  41.         - "traefik.http.services.bar.loadbalancer.server.port=80"
  42.         - "traefik.enable=true"
  43.         - "traefik.http.routers.bar.entrypoints=http"
  44.         - "com.mydomain.tenant.hash=foo"
  45.         - "com.mydomain.service.hash=bar"
  46.       mode: replicated
  47.       replicas: 1
  48.       endpoint_mode: vip
  49.       restart_policy:
  50.         condition: on-failure
  51.         delay: 15s
  52.         max_attempts: 5
  53.         window: 30s
  54.       resources:
  55.         limits:
  56.           memory: 1024M
  57.         reservations:
  58.           memory: 512M
  59.   db-bar:
  60.     image: registry.stage.mydomain.com/foo/wp-bar-db:latest
  61.     networks:
  62.       wp-bar-backend:
  63.         aliases:
  64.          - db
  65.     volumes:
  66.      - mysql:/var/lib/mysql
  67.     secrets:
  68.      - db.root
  69.       - db.name
  70.       - db.pass
  71.       - db.user
  72.     environment:
  73.       MYSQL_ROOT_PASSWORD_FILE: "/run/secrets/db.root"
  74.       MYSQL_DATABASE_FILE: "/run/secrets/db.name"
  75.       MYSQL_PASSWORD_FILE: "/run/secrets/db.pass"
  76.       MYSQL_USER_FILE: "/run/secrets/db.user"
  77.     deploy:
  78.       mode: replicated
  79.       replicas: 1
  80.       labels:
  81.        - "com.mydomain.tenant.hash=foo"
  82.         - "com.mydomain.service.hash=bar"
  83.       restart_policy:
  84.         condition: on-failure
  85.       resources:
  86.         limits:
  87.           memory: 512M
  88.         reservations:
  89.           memory: 256M
  90.   ad-bar:
  91.     image: adminer:latest
  92.     networks:
  93.       foo_stage_network:
  94.       wp-bar-backend:
  95.     environment:
  96.       VIRTUAL_HOST: "admin-mydomain.com"
  97.       VIRTUAL_PORT: "8080"
  98.     deploy:
  99.       mode: replicated
  100.       replicas: 1
  101.       endpoint_mode: dnsrr
  102.       labels:
  103.        - "com.mydomain.tenant.hash=foo"
  104.         - "com.mydomain.service.hash=bar"
  105.         - "traefik.http.middlewares.https_redirect.redirectscheme.permanent=true"
  106.         - "traefik.http.middlewares.https_redirect.redirectscheme.scheme=https"
  107.         - "traefik.http.routers.ad-bar-secured.entrypoints=https"
  108.         - "traefik.http.routers.ad-bar-secured.rule=Host(`admin-mydomain.com`)"
  109.         - "traefik.http.routers.ad-bar-secured.tls=true"
  110.         - "traefik.http.routers.ad-bar-secured.tls.certresolver=default"
  111.         - "traefik.http.routers.ad-bar.middlewares=https_redirect"
  112.         - "traefik.http.routers.ad-bar.rule=Host(`admin-mydomain.com`)"
  113.         - "traefik.http.services.ad-bar.loadbalancer.server.port=8080"
  114.         - "traefik.enable=true"
  115.         - "traefik.http.routers.ad-bar.entrypoints=http"
  116.       restart_policy:
  117.         condition: on-failure
  118.         max_attempts: 3
  119.         window: 15s
  120. volumes:
  121.   mysql:
  122.     driver: local
  123.     name: "foo_wp-bar--mysql"
  124.   wp-content:
  125.     driver: local
  126.     name: "foo_bar--wp-content-30ae62014fefdfeb4a936dabb9d08fc1eed6fac5"
  127. secrets:
  128.   stage.robots.txt:
  129.     external: true
  130.   db.root:
  131.     external: true
  132.     name: "stage.db.root.pass"
  133.   db.name:
  134.     external: true
  135.     name: "foo_wp-bar.stage.database"
  136.   db.pass:
  137.     external: true
  138.     name: "foo_wp-bar.stage.user.pass"
  139.   db.user:
  140.     external: true
  141.     name: "foo_wp-bar.stage.user.name"
  142. networks:
  143.   foo_stage_network:
  144.     external: true
  145.   wp-bar-backend:
  146.     driver: overlay
  147.     internal: true
  148.     driver_opts:
  149.       encrypted: "true"
  150.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement