Skip to content

fix(provider): .110 trusts the registry mirror - #355

Merged
rldyourmnd merged 3 commits into
mainfrom
feat/provider-110-mirror-ca
Sep 1, 2026
Merged

fix(provider): .110 trusts the registry mirror#355
rldyourmnd merged 3 commits into
mainfrom
feat/provider-110-mirror-ca

Conversation

@rldyourmnd

Copy link
Copy Markdown
Contributor

Provider v0.1.5-nddev.110. The image's daemon.json has named the member's zot as a docker.io pull-through mirror since the docker image was first built, and no worker ever trusted its certificate: every pull logged x509 unknown authority against the mirror and fell through to docker.io (30 MB cached after a month). The cache claim already hands the runner the fleet cache CA, which signs the mirror; the claim now installs it at /etc/docker/certs.d//ca.crt for each mirror daemon.json names. dockerd reads that directory per request, so the mirror is real from the first pull, with no daemon restart and no image change.

https://claude.ai/code/session_0128syXKxAGCfJGRDxUUNQXp

@rldyourmnd
rldyourmnd enabled auto-merge September 1, 2026 21:19
@rldyourmnd
rldyourmnd disabled auto-merge September 1, 2026 21:20
The image's daemon.json has named https://192.0.2.1:5001 as a registry
mirror since the docker image was first built, and zot on every member is
configured as a docker.io pull-through cache. No worker ever trusted the
certificate: the mirror's cert is signed by the fleet cache CA, the same
CA the cache claim already hands the runner for the artifact store, and
nothing installed it where dockerd looks. Every pull logged "x509:
certificate signed by unknown authority" against the mirror and fell
through to docker.io; the cache on gha-runner-1 held 30 MB after a month.

The claim script now installs the CA at /etc/docker/certs.d/<mirror>/ca.crt
for each mirror daemon.json names. dockerd reads that directory per
request, so the mirror is real from the job's first pull, with no daemon
restart and no image change. The mirror's certificate carries the bridge
address as an IP SAN, so hostname verification holds.

Claude-Session: https://claude.ai/code/session_0128syXKxAGCfJGRDxUUNQXp
Source ad6e658, built twice with CGO_ENABLED=0 go build -trimpath
-buildvcs=false -ldflags "-buildid= -s -w -X main.version=v0.1.5-nddev.110
-X main.commit=<source>"; both builds agree on b2073169e22971d08a5c0255e4f0115941df0e8d4f51b89aa370177fc27339dc.

Claude-Session: https://claude.ai/code/session_0128syXKxAGCfJGRDxUUNQXp
@rldyourmnd
rldyourmnd force-pushed the feat/provider-110-mirror-ca branch from a21c7aa to b7e4b64 Compare September 1, 2026 21:20
@rldyourmnd
rldyourmnd enabled auto-merge September 1, 2026 21:20
@rldyourmnd
rldyourmnd merged commit 25dc6cc into main Sep 1, 2026
10 checks passed
@rldyourmnd
rldyourmnd deleted the feat/provider-110-mirror-ca branch September 1, 2026 21:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant