version: "3" services: #UI dashboard dashboard: image: wiretrustee/dashboard:main restart: unless-stopped ports: - 80:80 - 443:443 environment: - AUTH_AUDIENCE=$NETBIRD_AUTH_AUDIENCE - AUTH_CLIENT_ID=$NETBIRD_AUTH_CLIENT_ID - AUTH_AUTHORITY=$NETBIRD_AUTH_AUTHORITY - USE_AUTH0=$NETBIRD_USE_AUTH0 - AUTH_SUPPORTED_SCOPES=$NETBIRD_AUTH_SUPPORTED_SCOPES - NETBIRD_MGMT_API_ENDPOINT=$NETBIRD_MGMT_API_ENDPOINT - NETBIRD_MGMT_GRPC_API_ENDPOINT=$NETBIRD_MGMT_API_ENDPOINT - NGINX_SSL_PORT=443 - LETSENCRYPT_DOMAIN=$NETBIRD_DOMAIN - LETSENCRYPT_EMAIL=$NETBIRD_LETSENCRYPT_EMAIL - AUTH_REDIRECT_URI=$NETBIRD_AUTH_REDIRECT_URI - AUTH_SILENT_REDIRECT_URI=$NETBIRD_AUTH_SILENT_REDIRECT_URI volumes: - $LETSENCRYPT_VOLUMENAME:/etc/letsencrypt/ # Signal signal: image: netbirdio/signal:latest restart: unless-stopped volumes: - $SIGNAL_VOLUMENAME:/var/lib/netbird ports: - 10000:80 # # port and command for Let's Encrypt validation # - 443:443 # command: ["--letsencrypt-domain", "$NETBIRD_DOMAIN", "--log-file", "console"] # Management management: image: netbirdio/management:latest restart: unless-stopped depends_on: - dashboard volumes: - $MGMT_VOLUMENAME:/var/lib/netbird - $LETSENCRYPT_VOLUMENAME:/etc/letsencrypt:ro - ./management.json:/etc/netbird/management.json ports: - $NETBIRD_MGMT_API_PORT:443 #API port # # port and command for Let's Encrypt validation without dashboard container # - 443:443 # command: ["--letsencrypt-domain", "$NETBIRD_DOMAIN", "--log-file", "console"] command: ["--port", "443", "--log-file", "console", "--disable-anonymous-metrics=$NETBIRD_DISABLE_ANONYMOUS_METRICS", "--single-account-mode-domain=$NETBIRD_MGMT_SINGLE_ACCOUNT_MODE_DOMAIN"] # Coturn coturn: image: coturn/coturn restart: unless-stopped domainname: $NETBIRD_DOMAIN volumes: - ./turnserver.conf:/etc/turnserver.conf:ro # - ./privkey.pem:/etc/coturn/private/privkey.pem:ro # - ./cert.pem:/etc/coturn/certs/cert.pem:ro network_mode: host volumes: $MGMT_VOLUMENAME: $SIGNAL_VOLUMENAME: $LETSENCRYPT_VOLUMENAME: