version: "3"

services:
  vandam:
    image: ghcr.io/floppy/van_dam:latest
    container_name: vandam_vandam
    env_file:
        - vandam_secrets.env
    volumes:
      - ${STL_DIR}:/libraries
    networks:
      - web
      - vandam
    labels:
      - traefik.http.routers.vandam.rule=Host(`3d.jafner.net`)
      - traefik.http.routers.vandam.tls.certresolver=lets-encrypt
      - traefik.http.routers.vandam.middlewares=traefik-forward-auth@file
    depends_on:
      - db
      - redis

  db:
    image: postgres:13
    container_name: vandam_postgres
    networks:
      - vandam
    env_file:
      - db_secrets.env
    volumes:
      - db_data:/var/lib/postgresql/data

  redis:
    image: redis:6
    networks:
      - vandam
    container_name: vandam_redis

volumes:
  db_data:

networks:
  web:
    external: true
  vandam: