使用Linux操作系统的Windows容器与Docker容器和Azure容器服务/ Kubernetes集群

在之前的线程中,我询问了如何将Windows容器移动到Azure容器服务的问题,我收到了很大的帮助

将Windows容器(使用Docker创build)部署到Azure容器服务中

将Windows容器(使用Docker构build)推入带有Linus OS的Azure容器服务(ACS)

我成功地在Windows Server 2016上创build了一个Docker容器,并通过一个Docker中心将Docker容器移动到一个具有Windows节点的Kubernetes集群中,在那里我可以运行这些容器

然而,在我为我的经理进行演示之后,我现在需要进行一个额外的研究,因为我的经理有一些问题。

首先,他很好奇Docker容器为什么不能在Windows上运行(我在创build容器时使用了Docker命令)。所有的Docker容器都应该是独立于平台的,并且可以在任何环境下运行在Windows和Linux上

另外,我知道在运行Docker时,应该在Windows和Linux之间切换。 但是,在带有Containers的Windows Server 2016上,没有Docker交换机。 只有命令行可用。

有可能在命令行上切换Linux和Windows模式,以防万一,我不使用Windows容器,我正在尝试使用Docker容器。

这是一个真正的声明,具有.Net核心应用程序(也是跨平台无法在Linux上运行)的Docker容器?

非常感谢您的回答!

他很好奇为什么docker容器不能在Windows上运行(我创build容器时使用Docker命令)所有的Docker容器应该是平台独立的,并且在任何环境下运行,在Windows和Linux

简而言之,容器不是用于虚拟化,而是使用主机的资源。

Windows容器需要.dll文件,但Linux没有这些.dll文件。 而基于Linux的容器需要libraries ,但Windows没有这些。

有可能在命令行上切换Linux和Windows模式

关于容器切换,请参考这篇文章 。 我们可以按照这篇文章来configurationdocker for windows。

这是一个真正的声明,与.Net核心应用程序的Docker容器?

据我所知,现在,我们不能在Linux上运行基于Windows的容器。