当前位置: 首页 > news >正文

amd64 -- buildx linux 镜像 Docker docker

当前跨 CPU 架构编译程序的不同方法:

方法一:直接在目标硬件上编译方法二:模拟目标硬件方法三:通过 binfmt_misc 模拟目标硬件的用户空间方法四:使用交叉编译器新方案:​ =>使用buildx构建多平台 Docker 镜像(无需修改dockerfile)

快速开始

1.查看buildx插件(要求docker大于19.03)

docker buildx version
github.com/docker/buildx v0.5.1-docker 11057da37336192bfc57d81e02359ba7ba848e4a
//如果提示docker: ‘buildx’ is not a docker command. 需要看下docker版本

2.Docker for Linux 不支持构建 arm 架构镜像,我们可以运行一个新的容器让其支持该特性

启用 binfmt_misc

//可以通过运行一个特权 Docker 容器来更方便的设置启用 binfmt_misc。这里输出太长,我就不展示了。

docker run --rm --privileged tonistiigi/binfmt:latest --install all

//运行结束后需要重启docker使其生效

sudo systemctl daemon-reload
sudo systemctl restart docker

//查看支持的处理器

ls -al /proc/sys/fs/binfmt_misc/
-rw-r–r-- 1 root root 0 Nov 6 08:10 qemu-aarch64
-rw-r–r-- 1 root root 0 Nov 6 08:10 qemu-arm
-rw-r–r-- 1 root root 0 Nov 6 08:10 qemu-mips64
-rw-r–r-- 1 root root 0 Nov 6 08:10 qemu-mips64el
-rw-r–r-- 1 root root 0 Nov 6 08:10 qemu-ppc64le
-rw-r–r-- 1 root root 0 Nov 6 08:10 qemu-riscv64
-rw-r–r--

相关文章:

  • 0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化
  • 大数据治理的常见方式
  • uniapp跳转到webview组件的时候,要注意:移除所有不可见字符(包括零宽空格)
  • Fetch API 使用详解:Bearer Token 与 localStorage 实践
  • spring中的@KafkaListener 注解详解
  • uni-app学习笔记二十三--交互反馈showToast用法
  • LeetCode - 560. 和为 K 的子数组
  • 【西门子杯工业嵌入式-5-串口实现数据收发】
  • java中static学习笔记
  • ubuntu下编译osg3.6.5源码
  • AT_abc409_e [ABC409E] Pair Annihilation
  • 【JAVA】javadoc —— 如何生成标准的 Java API 文档
  • 12.7Swing控件6 JList
  • SQL Server从入门到项目实践(超值版)读书笔记 16
  • 用 DeepSeek 高效完成数据分析与挖掘
  • 时序数据库IoTDB结合SeaTunnel实现高效数据同步
  • 浅谈未来汽车电子电气架构发展趋势中的通信部分
  • 码蹄杯真题分享
  • LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
  • 前端现行架构浅析
  • 做网站做的好的公司有哪些/网络营销制度课完整版
  • 产品开发软件/长沙seo优化服务
  • bl做视频网站/聊城今日头条最新
  • 益阳一站式网站建设公司/网络推广运营公司
  • 网站备案成功后怎么弄/郑州seo代理外包公司
  • 电子商务网站前台建设常用的技术有/怎么免费给自己建网站