在x86_64平台上构建多平台镜像(如arm64)时,我们可以利用docker官方提供的buildx工具来实现这一目标。
本文将以CentOS 7 x64系统为例,展示如何安装和使用Docker Buildx的最新版本(撰写时为v0.7.1)。您可以在以下链接下载最新版本:https://www.php.cn/link/901eed0aea40de0fd19a2cacc99a3066。
安装过程如下:
# 下载Buildxwget https://github.com/docker/buildx/releases/download/v0.7.1/buildx-v0.7.1.linux-amd64# 创建目标文件夹mkdir -p $HOME/.docker/cli-plugins# 移动文件mv buildx-v0.7.1.linux-amd64 $HOME/.docker/cli-plugins/docker-buildx# 添加执行权限chmod +x ~/.docker/cli-plugins/docker-buildx
Docker Buildx属于实验性功能,默认情况下未启用。我们需要修改/etc/docker/daemon.json文件,添加以下内容以启用此功能:
"experimental": true
启用后,进行初始化:
docker buildx create --name builderxdocker buildx use builderxdocker buildx inspect --bootstrap
安装并启用Docker Buildx后,我们可以使用它来构建多平台镜像。例如,原本的构建命令为:
docker build -t ${IMAGE_NAME}:${VERSION} .
使用Docker Buildx的构建命令则为:
影像之匠PixPretty
商业级AI人像后期软件,专注于人像精修,色彩调节及批量图片编辑,支持Windows、Mac多平台使用。适用于写真、婚纱、旅拍、外景等批量修图场景。
206 查看详情
docker buildx build --platform linux/amd64,linux/arm64 -t ${IMAGE_NAME}:${VERSION} . --push
其中,--platform参数指定需要构建的平台,如linux/amd64和linux/arm64;--push参数表示构建完成后自动推送到Docker Hub仓库。构建完成后,您可以在镜像的tag中看到支持的多个平台。
如果您的镜像支持多平台,拉取时会根据您的平台自动下载相应的镜像。
总结:
Docker Buildx需要修改配置文件来启用此功能。Docker Buildx需要初始化后才能使用。建议在构建镜像时添加--push参数,否则docker images可能看不到镜像,具体原因尚不明确。
本文部分内容参考了:Docker Buildx在x86_64机器上构建arm64镜像。
以上就是使用Docker Buildx构建多平台镜像的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/471075.html
微信扫一扫
支付宝扫一扫