
snickch/buildxsnickch/docker-with-buildx 是一个功能齐全的 Build-x 镜像,专为构建多架构 Docker 镜像设计。其核心用途是简化跨架构 Docker 镜像的构建流程,支持同时生成适用于 amd64 和 arm64 架构的镜像,满足不同硬件平台的兼容性需求。该镜像由开发者公开分享,供社区广泛使用。
amd64 和 arm64 两种主流架构,可一键构建跨平台镜像。amd64(如 x86 服务器)和 arm64(如 ARM 开发板、树莓派、AWS Graviton 实例)平台构建兼容镜像的场景。通过以下命令拉取最新版本镜像:
bashdocker pull snickch/docker-with-buildx:latest
如需指定版本(如有历史版本标签),可替换 latest 为具体版本号(如 v1.0.0)。
通过 docker run 启动镜像,挂载 Docker 套接字(/var/run/docker.sock)以访问宿主机 Docker 引擎,并指定构建上下文和目标架构:
bashdocker run --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ # 挂载 Docker 套接字,允许镜像内操作宿主机 Docker -v $(pwd):/workspace \ # 挂载当前目录作为构建上下文 -w /workspace \ # 设置工作目录为构建上下文 snickch/docker-with-buildx:latest \ build --platform linux/amd64,linux/arm64 \ # 指定目标架构(amd64 和 arm64) -t my-multiarch-image:latest . # 指定镜像名称和标签
参数说明:
--rm:构建完成后自动删除容器,避免残留。-v /var/run/docker.sock:/var/run/docker.sock:必须挂载 Docker 套接字,否则无法与宿主机 Docker 引擎通信。-v $(pwd):/workspace:将当前目录(含 Dockerfile 的构建上下文)挂载到容器内 /workspace 目录。--platform linux/amd64,linux/arm64:指定构建目标架构,可根据需求调整(如仅构建单一架构,可省略对应平台)。如需通过 docker-compose 管理构建流程,可创建 docker-compose.yml 文件:
yamlversion: '3.8' services: buildx: image: snickch/docker-with-buildx:latest volumes: - /var/run/docker.sock:/var/run/docker.sock # 挂载 Docker 套接字 - ./:/workspace # 挂载构建上下文(当前目录) working_dir: /workspace command: > build --platform linux/amd64,linux/arm64 -t my-multiarch-image:latest .
启动构建:
bashdocker-compose up
该镜像默认集成必要的 Build-x 配置,无需额外环境变量。如需自定义构建行为,可通过 Build-x 原生参数调整(如 --build-arg 传递构建参数、--push 推送至镜像仓库等),具体可参考 Buildx 官方文档。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务