Docker Buildx Auth Error

docker buildx 打包 arm 架构镜像时,报错 failed to fetch anonymous token

概要

docker buildx 打包 arm 架构镜像时,报错 ERROR: failed to solve: openjdk:8-jdk: failed to resolve source metadata for docker.io/library/openjdk:8-jdk: failed to authorize: failed to fetch anonymous token: Get “https://docker.m.daocloud.io/auth/token?scope=repository%3Alibrary%2Fopenjdk%3Apull&service=docker.m.daocloud.io": net/http: TLS handshake timeout


原因

由于 docker buildx 网路路径比较复杂,外部开启 clash 之后,会导致 buildx 构建容器中无法访问授权接口。

思路

关闭 clash,添加镜像站,运行

1
docker buildx build --platform linux/arm64 -t registry.cn-hangzhou.aliyuncs.com/gear-repo/qfg-fzyp-service-arch64 --load .
1
2
3
4
5
6
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://registry.docker-cn.com"
  ]
Gear(夕照)的博客。记录开发、生活,以及一些不足为道的思考……