Public OCI registries blocked by the enforced proxy egress allowlist
Hosted Dependabot docker-compose updates fail for public OpenMetadata and Elasticsearch
images when proxy-egress-enforce is enabled. The updater reports
private_source_authentication_failure, but the proxy rejects the requests before the
registry authentication handshake.
Reproduction and observed evidence
Public run: https://github.com/PillarMesh/heinzel/actions/runs/36058360953
Proxy revision: 860c5d8d17bf04cd09fad3ac13cf39dfb8e2bacf.
The proxy logs egress not allowlisted followed by HTTP 403 for:
docker.getcollate.io/v2/openmetadata/db/tags/list
docker.getcollate.io/v2/openmetadata/server/tags/list
docker.getcollate.io/v2/openmetadata/ingestion/tags/list
docker.elastic.co/v2/elasticsearch/elasticsearch/tags/list
Independent checks on 2026-09-24 completed the anonymous Bearer handshake and obtained
HTTP 200 for all four tag lists. Collate challenges point to auth.docker.io/token;
Elastic points to docker-auth.elastic.co/auth. No account credentials were needed.
Expected behavior
Hosted Dependabot should be able to discover updates for these public images without
requiring private registry credentials. Please include the vendor registry and required
anonymous token-service hosts in the appropriate built-in allowlist, or document a supported
credential-free configuration for these hosts. Keep egress enforcement enabled.
Relevant source
The handler accepts built-in domains plus exact dynamic hosts from configured credentials.
The built-in Docker registry list at this revision omits these vendor domains and Elastic's
token service. Dependabot's documented docker-registry configuration requires authentication
parameters, although these public repositories permit anonymous access.
Public OCI registries blocked by the enforced proxy egress allowlist
Hosted Dependabot docker-compose updates fail for public OpenMetadata and Elasticsearch
images when
proxy-egress-enforceis enabled. The updater reportsprivate_source_authentication_failure, but the proxy rejects the requests before theregistry authentication handshake.
Reproduction and observed evidence
Public run: https://github.com/PillarMesh/heinzel/actions/runs/36058360953
Proxy revision:
860c5d8d17bf04cd09fad3ac13cf39dfb8e2bacf.The proxy logs
egress not allowlistedfollowed by HTTP 403 for:docker.getcollate.io/v2/openmetadata/db/tags/listdocker.getcollate.io/v2/openmetadata/server/tags/listdocker.getcollate.io/v2/openmetadata/ingestion/tags/listdocker.elastic.co/v2/elasticsearch/elasticsearch/tags/listIndependent checks on 2026-09-24 completed the anonymous Bearer handshake and obtained
HTTP 200 for all four tag lists. Collate challenges point to
auth.docker.io/token;Elastic points to
docker-auth.elastic.co/auth. No account credentials were needed.Expected behavior
Hosted Dependabot should be able to discover updates for these public images without
requiring private registry credentials. Please include the vendor registry and required
anonymous token-service hosts in the appropriate built-in allowlist, or document a supported
credential-free configuration for these hosts. Keep egress enforcement enabled.
Relevant source
The handler accepts built-in domains plus exact dynamic hosts from configured credentials.
The built-in Docker registry list at this revision omits these vendor domains and Elastic's
token service. Dependabot's documented docker-registry configuration requires authentication
parameters, although these public repositories permit anonymous access.