version: "3.8" services: netbird-server: build: context: . dockerfile: Dockerfile.netbird-server container_name: netbird-server expose: - "80" # Management API + OAuth2 + Signal → внутрь proxy-сети ports: - "3478:3478/udp" # STUN, как было - "8444:80" # ← новый публичный TCP‑порт для management (пример) volumes: - netbird_data:/var/lib/netbird # именованный volume (не bind-mount) networks: - proxy netbird-dashboard: image: netbirdio/dashboard:latest container_name: netbird-dashboard # env_file не нужен — переменные заданы в Stack Environment Variables environment: - NETBIRD_MGMT_API_ENDPOINT=${NETBIRD_MGMT_API_ENDPOINT} - NETBIRD_MGMT_GRPC_API_ENDPOINT=${NETBIRD_MGMT_GRPC_API_ENDPOINT} - AUTH_AUDIENCE=${AUTH_AUDIENCE} - AUTH_CLIENT_ID=${AUTH_CLIENT_ID} - AUTH_CLIENT_SECRET=${AUTH_CLIENT_SECRET} - AUTH_AUTHORITY=${AUTH_AUTHORITY} - USE_AUTH0=${USE_AUTH0} - AUTH_SUPPORTED_SCOPES=${AUTH_SUPPORTED_SCOPES} - AUTH_REDIRECT_URI=${AUTH_REDIRECT_URI} - AUTH_SILENT_REDIRECT_URI=${AUTH_SILENT_REDIRECT_URI} - LETSENCRYPT_DOMAIN=${LETSENCRYPT_DOMAIN} - LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL} - NGINX_SSL_PORT=${NGINX_SSL_PORT} expose: - "80" networks: - proxy volumes: netbird_data: networks: proxy: external: true