c++ - 在 Mac OS X 上将 Docker 映像转换为二进制文件
问题描述
假设我有一个 Docker 图像,它运行一些有趣的东西,但是对于在 Mac-OSX 上编译的音频编辑应用程序来说非常复杂,该应用程序实时执行特定的音频渲染。
我有一个 Docker 设置,可以使用 Linux 映像正常运行,但是将音频通过管道传输到主机系统的过程既不可靠也不高效。我真的很想直接在主机操作系统上运行它。
我想在 Mac 上很好地运行这个桌面应用程序,但不依赖 Docker、Wine 等。
有没有办法从 Mac OSX 上本机运行的 Docker 映像制作单个二进制文件?
我认为它必须依赖于 Docker 拥有的一些动态库,但这很好。
解决方案
不,这是不可能的。
考虑到即使是“本机”Docker Desktop for Mac 应用程序实际上也可以与隐藏的虚拟机一起使用。(例如,比较 和 的输出uname -a
。docker run --rm busybox uname -a
)这就是您能够在 MacOS 主机上运行 Linux 容器的原因。但这也意味着,如果你能够将 Linux 容器打包成可以直接运行的东西,那么它就必须将 Linux VM 的其余部分一起带上。
有像Packer这样的工具可以帮助构建虚拟机,但在将虚拟机的显示/音频连接到主机时,您会遇到同样的问题。简化或自动化本机应用程序构建过程可能是更好的时间投资。
推荐阅读
- python - 没有使用 tar.gz 的 pip 安装名为“Cython”的模块
- python - Python Gurobi:如何在目标函数中实现决策变量的最大值?
- javascript - 在没有 jQuery 的情况下捕获 BootstrapNative 模态关闭事件
- django - 芹菜没有将日志写入Docker中的文件
- javascript - Javascript更改功能麻烦
- google-calendar-api - 谷歌日历 API grantOfflineAccess() 没有弹出
- r - 无论列顺序如何,计算所有可能的组合
- validation - 时间字段中的 XPAGE validateexpression 问题
- matlab - 创建一个估计 e 并概述误差的 MATLAB 函数
- java - 使用 JVM 将堆保存到文件后,标量替换对象的重新分配失败