aboutsummaryrefslogtreecommitdiff
path: root/services/directus/compose.yaml
blob: 7006049de644406764eb057db8309fce95612ff3 (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
80
81
82
83
84
85
networks:
  default:
  proxy:
    external: true

volumes:
  postgis:
  uploads:
  extensions:

services:
  postgis:
    image: postgis/postgis:13-master
    container_name: directus-postgis
    volumes:
      - postgis:/var/lib/postgresql/data
    environment:
      POSTGRES_USER: directus
      POSTGRES_PASSWORD: directus
      POSTGRES_DB: directus
    healthcheck:
      test:
        - CMD
        - pg_isready
        - --host=localhost
        - --username=directus
      interval: 10s
      timeout: 5s
      retries: 5
      start_interval: 5s
      start_period: 30s
    networks:
      - default

  redis:
    image: redis:6
    container_name: directus-redis
    healthcheck:
      test:
        - CMD-SHELL
        - "[ $$(redis-cli ping) = 'PONG' ]"
      interval: 10s
      timeout: 5s
      retries: 5
      start_interval: 5s
      start_period: 30s
    networks:
      - default

  directus:
    image: directus/directus:latest
    container_name: directus
    labels:
      traefik.enable: true
      traefik.http.services.directus.loadbalancer.server.port: 8055
      traefik.http.routers.directus.rule: Host(`directus.4d6178.work`)
      traefik.http.routers.directus.entrypoints: websecure
      traefik.http.routers.directus.tls: true
      traefik.http.routers.directus.tls.certresolver: le
    volumes:
      - uploads:/directus/uploads
      - extensions:/directus/extensions
    depends_on:
      postgis:
        condition: service_healthy
      redis:
        condition: service_healthy
    networks:
      - proxy
      - default
    environment:
      SECRET:
      DB_CLIENT: pg
      DB_HOST: postgis
      DB_PORT: "5432"
      DB_DATABASE: directus
      DB_USER: directus
      DB_PASSWORD: directus
      CACHE_ENABLED: "true"
      CACHE_AUTO_PURGE: "true"
      CACHE_STORE: redis
      REDIS: redis://redis:6379
      ADMIN_EMAIL: admin@4d6178.work
      ADMIN_PASSWORD:
      PUBLIC_URL: https://directus.4d6178.work