我对所有有关Docker的聊天以及它如何适应虚拟化世界感到困惑。所以这是一个直截了当的问题:我可以打包一个.Net应用程序(通常在Windows 7等操作系统上运行)以在Docker容器中运行,然后在支持Docker的“任何”主机上执行它吗?
TIA。
今天不行。将来,Microsoft和Docker都宣布您将拥有Windows版本的Docker。
编辑:较新的信息
请注意,基本平台和操作系统必须匹配-即今天,您可以在ARM Linux上运行ARM Linux容器,在x64 Linux上运行x64 Linux容器,但是不能混用。添加Windows后,模式将相同-您将能够在Windows OS上运行Windows容器,但不能在Linux上运行。并非没有额外的虚拟化层(例如VirtualBox,VMWare等)。
编辑:我没有考虑过。它有点像“虚拟化的额外层”,但在OSAPI级别而不是硬件级别。并且受支持的.Net程序范围有所限制。
同样,您可以使用Mono在Docker中运行.Net代码。