当前位置: 首页 > 知识库问答 >
问题:

Docker:为什么在Windows上使用Linux容器?

楚翰
2023-03-14

我使用Win 10 Pro N(版本1709)作为开发机器,使用Windows Server 2016 Standard(版本1607)作为生产服务器。

我目前正在开发一个使用MongoDb作为数据库的ASP.NET Core2应用程序。

几天前,我第一次偶然发现了这个想法,将MongoDb作为Docker映像运行。

这是个好决定吗?或者在我的场景中我应该使用Linux容器而不是Windows容器的原因是什么?

例如,如果我决定某个时候将我的应用程序部署到Linux服务器上呢?在这种情况下,从一开始就使用Linux容器是否更明智?

共有1个答案

商冠玉
2023-03-14

如果您想部署到linux,我会建议您使用linux容器,因为您可以测试一个更相似的设置,并且更有可能发现问题,这些问题也会显示在您的最终部署中。

除此之外,linux容器技术比windows容器更成熟,更受支持。

 类似资料:
  • 我有一个容器,我想停止,但当我做一个它挂起,永远不会停止它。 我试过正常的和

  • Windows上的Docker似乎是Windows Server2016内置的功能?并支持在Docker容器内运行Windows以及使用Windows作为Docker容器宿主。这支持Linux吗?我不这么认为,我认为它只支持运行Windows Docker容器。这似乎也是微软维护的。 Docker for Windows似乎是Docker团队为将Linux Docker引入Windows而创建的一

  • 但是只有使用运行它才允许用户通过终端与容器化进程交互。所以我想知道,“分配一个伪tty”是什么意思,因为即使在没有的情况下运行,进程写入的内容也会传递到终端(进程将有一个管道作为stdout,而不是tty)? 我读到这个答案说,您可以运行来获得“终端支持”,例如文本着色等。我已经做了以下实验: 并运行此映像,不使用。因为我是从终端运行它(总是从某个终端运行,不是吗?)我能看到一个红色的“你好世界”

  • 问题内容: 我正在查看一个串行程序,观察到它们在使用之前先使用过。为什么这是必需的。为什么我们不能直接致电并检查是否失败?另外,为什么要在我已经将文件描述符设置为传递时将文件描述符增加1并传递它呢? 例: fds已经具有fd的值 问题答案: 该系统调用告诉你是否有任何数据的文件描述符你感兴趣的。严格来说,它是文件描述符的读操作是否会阻止或不是一个问题读取。 如果您在文件描述符(例如连接到串行端口的

  • 问题内容: 在旧版Docker for Windows中,我记得它明确表示它使用Linux VM作为内核。 但自从新的稳定版本(我认为是2016年7月发布)以来,它说 如果我理解正确,则指定的基本映像用于用户空间,并且使用主机的内核。因此,如果指定使用ubuntu基本映像运行echo命令,则Windows内核如何发挥作用? 还是我完全误会了什么? 问题答案: 适用于Windows的Docker仍使

  • 问题内容: 我正在尝试通过Windows 7计算机上的Docker容器设置开发人员环境。 我已经为Windows安装了Docker工具箱。 我有一个包含Apache和PHP 5.6的映像,这里是: 该映像已创建,当我在Docker快速入门终端中运行“ docker映像”时可以看到它。 在我的apache-config.conf中,我只有一个小的虚拟主机,仅使用index.php文件即可访问测试网站