services: pirate-dice: build: context: . container_name: pirate-dice restart: unless-stopped # Kein Healthcheck: der Server spricht ausschliesslich WebSocket. Eine # nackte TCP-Verbindung darauf lehnt er ab ("Missing or invalid header # 'upgrade'") - und dabei ging reproduzierbar ein Paket an einen echten # Spieler verloren. Traefik braucht den Check nicht. networks: - web # Keine Portfreigabe nötig: alles läuft als WebSocket über Traefik auf 443. labels: - "traefik.enable=true" - "traefik.http.routers.piratedice.rule=Host(`dice.marha.de`)" - "traefik.http.routers.piratedice.entrypoints=websecure" - "traefik.http.routers.piratedice.tls.certresolver=letsencrypt" - "traefik.http.services.piratedice.loadbalancer.server.port=8000" networks: web: external: true