The management container was trying to fetch its own OIDC config via the external URL (https://domain/oauth2/.well-known/...), which creates a circular dependency: management -> DNS -> NPM -> Caddy -> management. This fails because the management container can't reach itself through the external network during startup. Changed OIDCConfigEndpoint to http://127.0.0.1:80/oauth2/... (same as LocalAddress) so the management server accesses its own embedded IdP directly without going through DNS/NPM/Caddy. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>