在Windows Server 2019上运行Linux Docker容器

4
我正在为我的公司项目探索Docker。在这个项目中,我需要在CentOS上运行MemCached,并且我更喜欢在Docker容器中运行它。我已经成功地在安装了Docker Community Edition的Windows 10机器上运行了它。但是我们的项目需要在生产环境中使用Windows Server 2019,并且我想在Windows Server 2019上运行同一镜像(CentOS上的MemCached)的容器。我搜索了很多资料,找到了一个链接,可以在Windows Server 2019上运行Linux容器。但是根据上面的链接,我们正在安装“预览”版本的docker包。我认为我不应该在生产中使用这个预览版。我的理解是正确的吗?此外,是否有其他稳定发布的方法在Windows Server 2019上运行Linux容器。
提前致谢。

我有同样的问题。你有什么消息吗?你找到解决方案了吗? - EM90
3个回答

2
根据预览版,您可以删除-RequiredVersion preview标签,然后进行安装。该过程将在Server 2019上安装Docker Enterprise Edition,而不是像WIN 10那样的CE版本。 如果要运行的容器是Linux容器,则可能会遇到一些困难,原因如下:
  • 容器(Linux)使用LCOW方式在Server 2019上运行,而LCOW方式是实验性功能。
  • 您说您想在生产环境中运行容器,我建议不要使用实验性功能进行生产。
如果需要在Windows服务器版本(例如Server 2016或Server 2019)上运行容器,则可以使用Docker CE(即适用于Win 10的相同.exe文件)。 需要注意的一点是,在Server 2016上并不支持所有docker版本。 Docker 2.0.0.31259是Server 2016上支持的Docker版本。(最新的Docker 2.1.0.3不能在Server 2016上工作,但可以在Server 2019上工作)
注意:我遇到了与您相同的问题,即您想在Server 2019上运行容器。以上是我目前的发现。从Windows方面没有关于如何运行Docker容器的明确说明。请参考我的答案:这里以获得更好的理解。

谢谢。但我只是好奇为什么在Windows Server 2019上运行Linux容器如此困难。谁想在Windows Server 2019上使用Windows容器呢?在Windows Server 2019上运行Linux容器的唯一好且易于实现的解决方案应该是使用MobyLinux。 - Amit Kumar Jain

1

这篇文章是我在遇到相同问题时能找到的最好的东西。 - davit_gri

1

我已经在同一个问题上挣扎了一段时间,对我来说,唯一有效运行Linux容器的Windows ServerDocker的组合是Windows Server 2019标准版和发布于2019年9月16日的Docker桌面社区2.1.3.0

关于边缘版本的阅读和下载链接为: https://docs.docker.com/docker-for-windows/edge-release-notes/

在我的情况下,还存在嵌套虚拟化的问题,因为我的Windows Server安装在VMware机器上,而Docker需要Windows Server内部的Hyper-V才能工作。

根据此处提供的说明解决了该问题: https://doitfixit.com/blog/2014/03/06/qhyper-v-components-is-not-runningq-nested-in-vmware-workstation/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接