使用 docker buildx 构建跨平台镜像

2021-11-13  本文已影响0人  quanCN

前言

在不同操作系统和处理器架构上运行应用是很普遍的场景,因此为不同平台单独构建发布版本是一种常见做法。当我们用来开发应用的平台与部署的目标平台不同时,实现这一目标并不容易。例如在 x86 架构上开发一个应用程序并将其部署到 ARM 平台的机器上,通常需要准备 ARM 平台的基础设施用于开发和编译。

一次构建多处部署的镜像分发大幅提高了应用的交付效率,对于需要跨平台部署应用的场景,利用docker buildx 构建跨平台的镜像也是一种快捷高效的解决方案。

大部分镜像托管平台支持多平台镜像,这意味着镜像仓库中单个标签可以包含不同平台的多个镜像,如图



通过 docker pull 或 docker run 拉取一个支持跨平台的镜像时,docker 会自动选择与当前运行平台相匹配的镜像。由于该特性的存在,在进行镜像的跨平台分发时,我们不需要对镜像的消费做任何处理,只需要关心镜像的生产,即如何构建跨平台的镜像。

docker buildx

docker buildx builder

Buildx 允许创建独立的builder。该环境不会更改共享守护程序的状态,或者用于隔离不同项目的构建

docker buildx demo

上一篇 下一篇

猜你喜欢

热点阅读