type
status
date
slug
summary
tags
category
icon
password
前言
尽管
Docker
广为宣传其"Build once, Run anywhere"
的理念,但现实中构建的镜像默认只能在相同架构的机器上运行。举个例子,如果你在 x86 架构
的机器上开发了一个小型服务,并计划将其部署到树莓派上,你会发现将构建好的镜像拉取到树莓派后是无法运行的,因为树莓派使用的是 ARM 架构
。这个问题显然增加了部署的复杂性,尤其是当你希望你的应用程序能够在多个架构上运行时,每次更新都需要在每个平台上重新构建镜像。为了简化这个过程,
Docker
提供了多架构构建(multi-architecture builds)
的支持,使得我们可以使用同一个 Dockerfile
构建出适用于不同架构的镜像。基于 Buildx 的方式组合多平台架构镜像
创建环境
创建并切换到一个新的 buildx 构建环境
查看环境信息
查看当前构建环境支持的架构

可以在最后一项
Platforms
里看到很多支持构建的架构构建多架构镜像
构建多架构镜像并push到DockerHub(需提前登录)
构建时
platform
参数加上需要的架构即可,架构间用,
分隔
完成后即可在DockerHub上看到多架构镜像
参考:
- 作者:Kougami
- 链接:https://blog.kougami.cn/article/1519abad-2f1c-8088-8bb7-d90c4141e161
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。