version: "3.7" services: beszel: image: henrygd/beszel:latest restart: unless-stopped networks: - YOUR-DOCKER-NETWORK extra_hosts: - host.docker.internal:host-gateway ports: - 8090:8090 volumes: - /Your/Beszel/Data/Path:/beszel_data deploy: mode: replicated replicas: 1 labels: - 'traefik.enable=true' - 'traefik.http.services.beszel-agent.loadbalancer.server.port=8090' beszel-agent1: image: henrygd/beszel-agent:latest restart: unless-stopped networks: - YOUR-DOCKER-NETWORK depends_on: - beszel_beszel ports: - 45876:45876 volumes: - /var/run/docker.sock:/var/run/docker.sock:ro environment: PORT: 45876 # Do not remove quotes around the key KEY: 'XXX-YOURKEY-XXX' LOG_LEVEL: 'debug' deploy: mode: replicated replicas: 1 placement: constraints: - node.hostname == swarmpi1 beszel-agent2: image: henrygd/beszel-agent:latest restart: unless-stopped networks: - YOUR-DOCKER-NETWORK depends_on: - beszel_beszel ports: - 45877:45877 volumes: - /var/run/docker.sock:/var/run/docker.sock:ro environment: PORT: 45877 # Do not remove quotes around the key KEY: 'XXX-YOURKEY-XXX' LOG_LEVEL: 'debug' deploy: mode: replicated replicas: 1 placement: constraints: - node.hostname == swarmpi2 beszel-agent3: image: henrygd/beszel-agent:latest restart: unless-stopped networks: - YOUR-DOCKER-NETWORK depends_on: - beszel_beszel ports: - 45878:45878 volumes: - /var/run/docker.sock:/var/run/docker.sock:ro environment: PORT: 45878 # Do not remove quotes around the key KEY: 'XXX-YOURKEY-XXX' LOG_LEVEL: 'debug' deploy: mode: replicated replicas: 1 placement: constraints: - node.hostname == swarmpi3 networks: YOUR-DOCKER-NETWORK: external: true