version: '3'

services:
  quartz:
    image: node:20-slim
    working_dir: /usr/src/app
    volumes:
      - ./:/usr/src/app  # Assuming your Quartz files are in a directory named 'quartz'
    ports:
      - "3000:3000"
    command: ["npx", "quartz", "build", "--serve", "--port", "3000"]
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.quartz.rule=Host(`notes.velouria.dev`)"
      - "traefik.http.routers.quartz.entrypoints=websecure"
      - "traefik.http.routers.quartz.tls.certresolver=myresolver"
      - "traefik.http.services.quartz.loadbalancer.server.port=3000"

networks:
  traefik_network:
    external: true