首页 > 解决方案 > 在 Mac OS X 上将 Docker 映像转换为二进制文件

问题描述

假设我有一个 Docker 图像,它运行一些有趣的东西,但是对于在 Mac-OSX 上编译的音频编辑应用程序来说非常复杂,该应用程序实时执行特定的音频渲染。

我有一个 Docker 设置,可以使用 Linux 映像正常运行,但是将音频通过管道传输到主机系统的过程既不可靠也不高效。我真的很想直接在主机操作系统上运行它。

我想在 Mac 上很好地运行这个桌面应用程序,但不依赖 Docker、Wine 等。

有没有办法从 Mac OSX 上本机运行的 Docker 映像制作单个二进制文件?

我认为它必须依赖于 Docker 拥有的一些动态库,但这很好。

标签: c++dockerexecutablebinaryfiles

解决方案


不,这是不可能的。

考虑到即使是“本机”Docker Desktop for Mac 应用程序实际上也可以与隐藏的虚拟机一起使用。(例如,比较 和 的输出uname -adocker run --rm busybox uname -a)这就是您能够在 MacOS 主机上运行 Linux 容器的原因。但这也意味着,如果你能够将 Linux 容器打包成可以直接运行的东西,那么它就必须将 Linux VM 的其余部分一起带上。

有像Packer这样的工具可以帮助构建虚拟机,但在将虚拟机的显示/音频连接到主机时,您会遇到同样的问题。简化或自动化本机应用程序构建过程可能是更好的时间投资。


推荐阅读