summaryrefslogtreecommitdiff
path: root/docker-stack.yml
blob: 6512e2e71ede785d01e1e34e747674002ec5a117 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
version: '3.8'

services:
  web:
    image: ${IMAGE_NAME}
    ports:
      - target: 80
        published: 8280
        protocol: tcp
        mode: host
    deploy:
      replicas: 1
      update_config:
        parallelism: 1
        delay: 10s
        order: start-first
      restart_policy:
        condition: on-failure
        delay: 5s
        max_attempts: 3
        window: 120s
      labels:
        - "app=vite-portfolio"
    networks:
      - portfolio-network

  drupal:
    image: drupal:10-apache
    ports:
      - target: 80
        published: 8281
        protocol: tcp
        mode: host
    environment:
      DRUPAL_DB_HOST: mariadb
      DRUPAL_DB_PORT: 3306
      DRUPAL_DB_NAME: ${DRUPAL_DB_NAME:-drupal}
      DRUPAL_DB_USER: ${DRUPAL_DB_USER:-drupal}
      DRUPAL_DB_PASSWORD: ${DRUPAL_DB_PASSWORD:-drupal}
    volumes:
      - drupal-sites:/var/www/html/sites
      - drupal-modules:/var/www/html/modules
      - drupal-themes:/var/www/html/themes
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
      labels:
        - "app=drupal"
    networks:
      - portfolio-network

  mariadb:
    image: mariadb:11
    environment:
      MARIADB_DATABASE: ${DRUPAL_DB_NAME:-drupal}
      MARIADB_USER: ${DRUPAL_DB_USER:-drupal}
      MARIADB_PASSWORD: ${DRUPAL_DB_PASSWORD:-drupal}
      MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD:-root}
    volumes:
      - mariadb-data:/var/lib/mysql
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
      labels:
        - "app=drupal-db"
    networks:
      - portfolio-network

volumes:
  drupal-sites:
  drupal-modules:
  drupal-themes:
  mariadb-data:

networks:
  portfolio-network:
    driver: overlay