diff --git a/netbird-server/CHANGELOG.md b/netbird-server/CHANGELOG.md index e69de29bb2..9ee4175fe6 100644 --- a/netbird-server/CHANGELOG.md +++ b/netbird-server/CHANGELOG.md @@ -0,0 +1,4 @@ +## 0.64.5-8 (2026-07-06) +- Fix NetBird management startup by adding glibc compatibility for the upstream binary. +- Assign separate metrics ports for management, signal, and relay to avoid startup port conflicts. +- Quote dashboard OIDC scopes so the generated env file can be sourced correctly. diff --git a/netbird-server/Dockerfile b/netbird-server/Dockerfile index 0a9c005b9f..53cb2b541d 100644 --- a/netbird-server/Dockerfile +++ b/netbird-server/Dockerfile @@ -74,7 +74,7 @@ COPY ha_automodules.sh /ha_automodules.sh RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh # Manual apps -ENV PACKAGES="nginx gettext ca-certificates caddy openssl" +ENV PACKAGES="nginx gettext ca-certificates caddy openssl gcompat" # Automatic apps & bashio COPY ha_autoapps.sh /ha_autoapps.sh diff --git a/netbird-server/config.yaml b/netbird-server/config.yaml index ffeebcbfb9..2e2c79c7e7 100644 --- a/netbird-server/config.yaml +++ b/netbird-server/config.yaml @@ -23,5 +23,5 @@ ports_description: schema: domain: str url: https://github.com/alexbelgium/hassio-addons/tree/master/netbird-server -version: 0.64.5-7 +version: 0.64.5-8 webui: "[PROTO:ssl]://[HOST]:[PORT:443]" diff --git a/netbird-server/rootfs/etc/cont-init.d/00-config.sh b/netbird-server/rootfs/etc/cont-init.d/00-config.sh index 12ca4c61ac..9d9a6d95fb 100755 --- a/netbird-server/rootfs/etc/cont-init.d/00-config.sh +++ b/netbird-server/rootfs/etc/cont-init.d/00-config.sh @@ -31,6 +31,7 @@ DASHBOARD_PORT=8080 SIGNAL_PORT=8083 SIGNAL_GRPC_PORT=10000 RELAY_PORT=8084 +RELAY_METRICS_PORT=9093 if [[ -z "$DOMAIN" || "$DOMAIN" == "netbird.example.com" ]]; then result=$(bashio::api.supervisor GET /core/api/config true || true) @@ -110,11 +111,15 @@ NB_LOG_LEVEL=info NB_LISTEN_ADDRESS=:${RELAY_PORT} NB_EXPOSED_ADDRESS=${NETBIRD_RELAY_PROTO}://${DOMAIN}:${NETBIRD_PORT} NB_AUTH_SECRET=${RELAY_AUTH_SECRET} +NB_METRICS_PORT=${RELAY_METRICS_PORT} NB_ENABLE_STUN=true NB_STUN_LOG_LEVEL=info NB_STUN_PORTS=${NETBIRD_STUN_PORT} CONFIG fi +if ! grep -q '^NB_METRICS_PORT=' "$RELAY_ENV_FILE"; then + echo "NB_METRICS_PORT=${RELAY_METRICS_PORT}" >> "$RELAY_ENV_FILE" +fi # Generate dashboard env file if missing DASHBOARD_ENV_FILE="$DATA_DIR/dashboard/env" @@ -130,7 +135,7 @@ AUTH_CLIENT_ID=netbird-dashboard AUTH_CLIENT_SECRET= AUTH_AUTHORITY=${NETBIRD_HTTP_PROTOCOL}://${DOMAIN}/oauth2 USE_AUTH0=false -AUTH_SUPPORTED_SCOPES=openid profile email groups +AUTH_SUPPORTED_SCOPES="openid profile email groups" AUTH_REDIRECT_URI=/nb-auth AUTH_SILENT_REDIRECT_URI=/nb-silent-auth # SSL @@ -140,6 +145,7 @@ LETSENCRYPT_DOMAIN=none CONFIG chmod 600 "$DASHBOARD_ENV_FILE" fi +sed -i 's/^AUTH_SUPPORTED_SCOPES=openid profile email groups$/AUTH_SUPPORTED_SCOPES="openid profile email groups"/' "$DASHBOARD_ENV_FILE" # Generate Caddyfile if missing CADDYFILE="$DATA_DIR/Caddyfile" diff --git a/netbird-server/rootfs/etc/services.d/management/run b/netbird-server/rootfs/etc/services.d/management/run index 2404df3cc8..d09c88fef3 100644 --- a/netbird-server/rootfs/etc/services.d/management/run +++ b/netbird-server/rootfs/etc/services.d/management/run @@ -11,6 +11,7 @@ DATA_DIR="/config/netbird" LOG_LEVEL="info" MANAGEMENT_CONFIG="$DATA_DIR/management/management.json" MANAGEMENT_PORT=8081 +MANAGEMENT_METRICS_PORT=9091 if [[ ! -f "$MANAGEMENT_CONFIG" ]]; then bashio::log.error "Missing management configuration at ${MANAGEMENT_CONFIG}." @@ -21,6 +22,7 @@ bashio::log.info "Starting NetBird Management..." exec /usr/local/bin/netbird-mgmt management \ --config "$MANAGEMENT_CONFIG" \ --port "$MANAGEMENT_PORT" \ + --metrics-port "$MANAGEMENT_METRICS_PORT" \ --log-level "$LOG_LEVEL" \ --log-file console \ --disable-anonymous-metrics=false \ diff --git a/netbird-server/rootfs/etc/services.d/signal/run b/netbird-server/rootfs/etc/services.d/signal/run index 5dc805860a..725b733bc1 100644 --- a/netbird-server/rootfs/etc/services.d/signal/run +++ b/netbird-server/rootfs/etc/services.d/signal/run @@ -8,10 +8,12 @@ set -euo pipefail # ============================================================================== SIGNAL_PORT=8083 +SIGNAL_METRICS_PORT=9092 LOG_LEVEL="info" bashio::log.info "Starting NetBird Signal on port ${SIGNAL_PORT} (legacy gRPC on 10000)..." exec /usr/local/bin/netbird-signal run \ --port "$SIGNAL_PORT" \ + --metrics-port "$SIGNAL_METRICS_PORT" \ --log-level "$LOG_LEVEL" \ --log-file console