Skip to content

Fix docker-image-refresh: build via ACR Tasks to avoid Docker Hub on isolated pool#3671

Merged
gavinbarron merged 1 commit into
mainfrom
gavinbarron/fix-refresh-dockerhub
Jul 22, 2026
Merged

Fix docker-image-refresh: build via ACR Tasks to avoid Docker Hub on isolated pool#3671
gavinbarron merged 1 commit into
mainfrom
gavinbarron/fix-refresh-dockerhub

Conversation

@gavinbarron

Copy link
Copy Markdown
Member

Follow-up to the docker-image-refresh pipeline. On the network-isolated 1ES pool the build fails with:

Unable to find image 'tonistiigi/binfmt:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": ... Client.Timeout exceeded

Cause: docker run … tonistiigi/binfmt and docker buildx create pull helper images (tonistiigi/binfmt, moby/buildkit) from Docker Hub, which the isolated pool can't reach.

Fix: Build server-side with ACR Tasks (az acr build). ACR pulls the base from MCR and pushes the result back to the registry — no local Docker daemon, no buildx/QEMU, and no Docker Hub dependency. Single linux/amd64 target, so no multi-arch emulation needed.

Permissions note: az acr build schedules an ACR Task run, so the ACR Images Push Service Connection identity needs task-scheduling rights (Microsoft.ContainerRegistry/registries/scheduleRun/action — included in Contributor), in addition to AcrPush. If the SP only has AcrPush, either grant that action or fall back to classic docker build + docker push (which pulls the base from MCR only).

…er Hub

On the network-isolated 1ES pool the agent cannot reach registry-1.docker.io, so 'docker run tonistiigi/binfmt' and 'docker buildx create' (which pull moby/buildkit) fail with a connection timeout. Replace the local docker/buildx path with a server-side 'az acr build': ACR pulls the base from MCR and pushes the result, with no local Docker daemon, no QEMU/binfmt, and no Docker Hub dependency.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: d3f8fec7-b00b-46be-ba39-7e1f3e7f7188
@gavinbarron
gavinbarron requested a review from a team as a code owner July 22, 2026 00:12
@gavinbarron
gavinbarron enabled auto-merge (squash) July 22, 2026 00:53
@gavinbarron
gavinbarron merged commit 6028659 into main Jul 22, 2026
6 of 8 checks passed
@gavinbarron
gavinbarron deleted the gavinbarron/fix-refresh-dockerhub branch July 22, 2026 01:03
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.

2 participants