---

version: "3.8"

volumes:
  directus:
    name: ${DIRECTUS_VOLUME_NAME:-directus}

services:
  directus:
    container_name: ${DIRECTUS_CONTAINER_NAME:-directus}
    image: ${DIRECTUS_IMAGE:-directus/directus:9.8.0}
    restart: always
    volumes:
      - directus:/directus/uploads
    depends_on:
      - postgres
      - redis
    environment:
      KEY: ${DIRECTUS_KEY:?err}
      SECRET: ${DIRECTUS_SECRET:?err}
      TELEMETRY: false

      ADMIN_EMAIL: ${DIRECTUS_ADMIN_EMAIL:?err}
      ADMIN_PASSWORD: ${DIRECTUS_ADMIN_PASSWORD:?err}
      PUBLIC_URL: ${DIRECTUS_PUBLIC_URL:?err}

      DB_CLIENT: 'pg'
      DB_HOST: ${POSTGRES_CONTAINER_NAME:-postgres} # Default name is same as ../postgres/docker-compose.yml:8
      DB_PORT: '5432'
      DB_DATABASE: ${POSTGRES_DB:?err}
      DB_USER: ${POSTGRES_USER:?err}
      DB_PASSWORD: ${POSTGRES_PASSWORD:?err}

      TZ: ${TZ:-Europe/Paris}

      PUID: ${DIRECTUS_PUID:-1000}
      PGID: ${DIRECTUS_PGID:-1000}