我目前正在尝试了解和学习Docker。我有一个app,.exe文件,我想通过创建一个Docker在Linux或OSX上运行它。我已经在网上搜索了但是我找不到任何可以做到这一点的事情,而且我不太了解Docker以便尝试即兴创作。这可能吗?我必须使用Boot2Docker吗?你能指点我正确的方向吗?提前感谢您的任何帮助表示赞赏。
答案 0 :(得分:5)
Docker允许您隔离在主机上运行的应用程序,它不提供运行这些应用程序的不同操作系统(除了包含Linux VM的客户端产品,因为Docker最初只是Linux工具)。如果应用程序在Linux上运行,它通常可以在容器内运行。如果应用程序无法在Linux上运行,那么它将无法在Linux容器内运行。
exe是一种Windows二进制格式。此二进制格式与Linux不兼容(除非您在模拟器或VM中运行它)。我不知道有任何简单的方法来实现你的目标。如果要运行此二进制文件,请在Linux上跳过Docker并在主机上安装Windows VM。
答案 1 :(得分:0)
正如其他答案所言,Docker不会模拟运行可执行文件“ exe”所需的整个Windows操作系统。但是,还有另一个工具可能会执行与您想要的操作类似的操作:WineHQ的“ Wine”应用程序。他们网站的简短摘要:
Wine是一个能够运行Windows应用程序的兼容性层 在几种操作系统上,例如Linux和macOS。 而不是像虚拟一样模拟内部Windows逻辑 机器或模拟器,Wine转换Windows API调用 快速运行,消除了性能和内存损失 其他方法,并允许您干净地集成Windows 应用程序到您的桌面。
(我既不使用WineHQ,也不使用它,也没有实际使用它。我只听说过它,看来这可能是在轻量级内运行Windows程序的解决方案容器。)