version: '3.8' services: headscale: image: git.nixc.us/colin/headscale:staging # volumes: # - public_system:/headscale/public/system networks: - traefik environment: SERVER_URL: "https://staging.headscale.nixc.us" LISTEN_ADDR: "0.0.0.0:8080" METRICS_LISTEN_ADDR: "0.0.0.0:9090" GRPC_LISTEN_ADDR: "0.0.0.0:50443" DB_TYPE: "sqlite3" DB_PATH: "/etc/headscale/db.sqlite" deploy: placement: constraints: - node.hostname == macmini3 labels: us.nixc.autodeploy: "true" traefik.enable: "true" traefik.http.routers.staging-headscale_headscale.rule: "Host(`staging.headscale.nixc.us`)" traefik.http.routers.staging-headscale_headscale.entrypoints: "websecure" traefik.http.routers.staging-headscale_headscale.tls: "true" traefik.http.routers.staging-headscale_headscale.tls.certresolver: "letsencryptresolver" traefik.http.routers.staging-headscale_headscale.service: "staging-headscale_headscale" traefik.http.services.staging-headscale_headscale.loadbalancer.server.port: "8080" traefik.docker.network: "traefik" replicas: 1 restart_policy: condition: on-failure networks: traefik: external: true default: driver: overlay