| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- version: '3.9'
- services:
- headscale:
- image: docker.io/headscale/headscale:latest
- pull_policy: always
- container_name: headscale
- restart: unless-stopped
- command: serve
- volumes:
- - ./headscale/config:/etc/headscale
- - ./headscale/data:/var/lib/headscale
- # labels:
- # - traefik.enable=true
- # - traefik.http.routers.headscale-rtr.rule=PathPrefix(`/`) # you might want to add: && Host(`your.domain.name`)"
- # - traefik.http.services.headscale-svc.loadbalancer.server.port=8080
- headscale-ui:
- image: ghcr.io/gurucomputing/headscale-ui:latest
- pull_policy: always
- container_name: headscale-ui
- restart: unless-stopped
- volumes:
- # labels:
- # - traefik.enable=true
- # - traefik.http.routers.headscale-ui-rtr.rule=PathPrefix(`/web`) # you might want to add: && Host(`your.domain.name`)"
- # - traefik.http.services.headscale-ui-svc.loadbalancer.server.port=8080
- # traefik:
- # image: traefik:latest
- # pull_policy: always
- # restart: unless-stopped
- # container_name: traefik
- # command:
- # - --api.insecure=true # remove in production
- # - --providers.docker
- # - --entrypoints.web.address=:80
- # - --entrypoints.websecure.address=:443
- # - --global.sendAnonymousUsage=false
- # ports:
- # - 9012:80
- # - 9013:443
- # - 9811:8080 # web UI (enabled with api.insecure)
- # volumes:
- # - /var/run/docker.sock:/var/run/docker.sock:ro
- # - ./traefik/certificates:/certificates
- # # caddy:
- # # image: caddy:latest
- # # # network_mode: host
- # # restart: unless-stopped
- # # # extra_hosts:
- # # # - "host.docker.internal:host-gateway"
- # # volumes:
- # # - /etc/timezone:/etc/timezone
- # # - /etc/localtime:/etc/localtime
- # # - ./Caddyfile:/etc/caddy/Caddyfile
- # # ports:
- # # - 9811:9811
- # # - 9812:80
|