services: headscale: image: headscale/headscale:latest container_name: headscale volumes: - ./container-config:/etc/headscale #This is the location of where the Headscale config.yaml is stored - ./container-data/data:/var/lib/headscale ports: - 8080:8080 #Headscale will be listening on 8080, for this example we're going to map that to port 28080 on the host. command: serve restart: unless-stopped networks: bsej: headscale-ui: image: ghcr.io/gurucomputing/headscale-ui:latest restart: unless-stopped container_name: headscale-ui ports: - 8443:8443 #This is the port Headscale UI runs the web interface on. You can map 8443 to any port you wish. For this example I will leave it as is. networks: bsej: networks: bsej: external: true