【问题标题】:Run Docker on Windows without virtualization在没有虚拟化的情况下在 Windows 上运行 Docker
【发布时间】:2016-10-23 07:27:59
【问题描述】:

我想知道我是否可以在没有机器虚拟化的情况下在 Windows 机器上运行带有 windows 容器的 docker,就像在 Linux 上一样。

因为我的整个环境都在 azure 上的 windows 机器上运行,如果 docker 在没有机器虚拟化的 windows 上运行,将 docker 添加到我当前的工作流程中会容易得多。

如果没有,在不久的将来有可能吗?

【问题讨论】:

    标签: windows azure docker windows-server


    【解决方案1】:

    现在看来,您实际上可以在没有任何虚拟化的情况下在 Windows 上运行 linux docker 容器。只需使用 Windows 子系统 Linux (WSL)。但是需要一些手动设置(我认为这不是太难)。查看这些链接了解更多详情:

    我刚刚偶然发现了那篇中型文章,在这里非常值得一提。但是:我自己还没有尝试过。

    第二个链接描述了细节。基本上,您必须在 WSL 中执行以下操作:

    1. 确保拥有 Windows 10 Version 1803 Build 1734 或更高版本
    2. 在 WSL 上安装类似 debian 的发行版
    3. 安装和配置 docker-ce 版本 17.09(很多更早或更高的版本似乎都不起作用)
    4. 手动设置启动任务,重启后启动docker服务和cgroupfs

    【讨论】:

    • 感谢您的回复,但您应该在此处编写这些手动步骤,而不是简单地链接到外部站点。
    • 哦,对不起,如果我违反了一些 stackoverflow 规则?问题是:第二个链接指向一篇详细描述所有这些步骤的文章,我认为在这里重新发布所有内容是不可能且有用的。
    • 我会等到 WSL 2 正式发布后才能使用真正的 Linux 内核而不是 WSL 1 中的仿真内核。
    【解决方案2】:

    就像在 Linux 上一样。

    在 Linux 上,它是“Linux 上的 Docker”。如果您想在 Windows 上运行该 docker,您需要一个 VM:VirtualBox 或 with docker 1.12, Hyper-V:请参阅 getting started
    但即使是“Docker for Windows”也可以创建一个 Linux VM,Linux 上的 Docker 可以在其中运行。

    还有一个Docker for AWS beta just announced yesterday。 同样,这将使用 Linux 实例。实例是 AWS 云中的虚拟服务器。
    这仍然是为了在 Linux 上启用 Docker。

    Docker on Windows 将是 available only on Windows Server 2016 TP5+: see its documentation
    这是唯一一个将实际的 Windows 映像作为容器运行。

    【讨论】:

    • 有一个 docker 到 Windows 的端口,适用于 Windows 8、10 和 Server 2012(包括 r2)。它称为 Windocks,可在 windocks.com 获得。那是一台服务器,将在 Windows 上运行 SQL Server 和 .Net 容器。
    猜你喜欢
    • 2020-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多