services: quartermaster: image: forgejo.labbity.unbiasedgeek.com/archeious/quartermaster/quartermaster:${QUARTERMASTER_TAG:-latest} container_name: quartermaster restart: unless-stopped mem_limit: 1g memswap_limit: 1g environment: QUARTERMASTER_DB_URL: sqlite:////data/quartermaster.db volumes: - /mnt/quartermaster:/data networks: - proxy-net healthcheck: test: - CMD - python - -c - "import sys, urllib.request; sys.exit(0 if urllib.request.urlopen('http://127.0.0.1:8000/healthz', timeout=3).status == 200 else 1)" interval: 30s timeout: 5s start_period: 10s retries: 3 logging: driver: json-file options: max-size: 50m max-file: "3" labels: - "tenant=quartermaster" - "project=quartermaster" - "managed_by=quartermaster" - "com.centurylinklabs.watchtower.enable=false" - "traefik.enable=true" - "traefik.docker.network=proxy-net" - "traefik.http.routers.quartermaster.rule=Host(`quartermaster.unbiasedgeek.com`)" - "traefik.http.routers.quartermaster.entrypoints=websecure" - "traefik.http.routers.quartermaster.tls=true" - "traefik.http.routers.quartermaster.tls.certresolver=letsencrypt" - "traefik.http.routers.quartermaster.middlewares=quartermaster-basicauth@file,quartermaster-ratelimit@file" - "traefik.http.services.quartermaster.loadbalancer.server.port=8000" networks: proxy-net: external: true