×

在M1(ARM架构)的Macbook上编译 x86/amd64架构的Docker镜像

Falcon 2024-08-20 views:
摘要

正在生成中……

要在M1 Mac(ARM架构)上为x86/amd64架构构建Docker镜像,并将其推送到Docker Hub以便在x86/amd64架构的服务器上拉取使用,可以按照以下步骤操作:

1. 启用Docker的多平台构建

Docker支持使用buildx命令进行多平台构建,这样可以为不同的架构构建镜像。

2. 创建新的Builder实例

首先,创建一个支持多平台的Builder实例:

docker buildx create --name mybuilder --use
docker buildx inspect --bootstrap

2. 构建和推送多平台镜像

使用buildx build命令,指定多个平台并推送到Docker Hub:

docker buildx build --platform linux/amd64,linux/arm64 -t falconchen/ktrends:latest --push .
  • --platform linux/amd64,linux/arm64: 指定要构建的多个平台(x86/amd64和ARM64)。
  • -t falconchen/ktrends:latest: 为镜像打标签。
  • --push: 构建完成后直接推送到Docker Hub。
  • .: 指当前目录(Dockerfile所在的位置)。

4. 在服务器上拉取镜像

一旦镜像推送到Docker Hub,你可以在x86/amd64架构的服务器上拉取它:

docker pull falconchen/ktrends:latest

现在,这个镜像应该与服务器的架构兼容,可以正常使用。

update

放弃了,分别构建和推送,使用不同的tag。

构建amd64

docker buildx build --platform linux/amd64 -t falconchen/ktrends:amd64-latest --push .

构建 arm64

docker buildx build --platform linux/amd64 -t falconchen/ktrends:amd64-latest --push .
本文收录于