问题标签 [multiarch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
184 浏览

docker - 在 Dockerfile 中设置条件变量

我正在尝试使用预定义的TARGETARCHarg变量通过 buildkit 创建一个多架构 docker 映像。

我想做的是 - 我认为 - 类似 bash 变量间接的东西,但我知道这不受支持,我正在努力想出一个替代方案。

这是我所拥有的:

...这有点伪代码,但希望能说明我正在尝试做的事情:我想要 a 的值$DOWNLOAD_amd64$DOWNLOAD_arm64放入$DOWNLOAD_URL,具体取决于$TARGETARCH设置的内容。

这可能是一个长期解决的问题,但要么我在谷歌上搜索错误的东西,要么就是没有得到它。

0 投票
0 回答
34 浏览

macos - 适用于 Linux、Mac 和 Windows 的 crossbuild cmake 教程

CMake 在这里有一个教程:

https://github.com/Kitware/CMake/tree/master/Help/guide/tutorial/Complete

我想使用以下命令为 Linux、Mac 和 Windows 交叉构建它:

https://github.com/multiarch/crossbuild

Crossbuild 提供了一个易于使用的 docker 镜像:

https://hub.docker.com/r/multiarch/crossbuild

我用 Debian Bullseye 代替了 stretch 做了一个分叉:

https://hub.docker.com/r/kmturley/crossbuild

我下载了文件并放在一个/src文件夹中:

https://github.com/kmturley/cmake-multiarch-docker/tree/feature/crossbuild-new

然后我创建了一个 docker-compose 文件,其中包含:

成功运行docker-compose up时会生成 Linux 和 Windows 二进制文件。但是没有生成 Mac 二进制文件:

CMakeOutput.log每个 Docker 映像的文件:

似乎没有显示任何错误,即使使用cmake --debug-output.

为什么没有生成 Mac Tutorial 二进制文件?

0 投票
0 回答
28 浏览

docker - 在 ansible 上构建多架构 docker 映像?

就像现在一样,可以docker build使用community.docker集合生成图像:

(来自文档的示例)

我的问题很简单。根据他们的文档,该platform领域似乎只允许一种架构:

平台格式os[/arch[/variant]]

(注意“平台”而不是“平台”,该类型是“字符串”而不是字符串列表)

是否可以使用 community.docker 集合进行多架构构建(例如amd64and )?arm当然,我可以使用 shell/command 来代替:

但是是否可以使用集合中现在可用的内容?