【问题标题】:Is it possible to run linux docker image on windows是否可以在 Windows 上运行 linux docker 映像
【发布时间】:2016-04-15 05:08:58
【问题描述】:

我在我的 mac 上构建了一个 docker 映像并将其保存到一个 tar(客户端的 windows 服务器无法访问外部世界,因此我需要将此文件传输给他们)。

据我了解,在 Windows 机器上,我可以使用 VirtualBox 安装 docker 工具箱,然后我可以启动 Docker QuickStartTerminal,它将启动本质上是一个 linux VM 的 docker 机器。

那么,是否可以在 windows 机器上运行这个 docker 镜像,它是特定于某些版本的 windows 的吗?

感谢您的宝贵时间!

【问题讨论】:

  • 只要 docker server/engine 在 Linux 内核下运行,总是可以在其下运行 Linux docker 镜像。在你的情况下,是的!因为docker引擎是在VirtualBox下的Linux VM下运行的。

标签: windows docker containers


【解决方案1】:

这取决于您所说的running on Windows 是在 Windows 7/8/10 中还是在 Windows Server 2016 中

在 Windows 7/8/10 上是可能的,因为它实际上是一个 Linux 虚拟机

Windows Server 2016 无法实现

您需要一个 Windows Server 2016 来启动一个 Windows 容器,以及一个 Linux 服务器来启动一个 Linux 容器。

我会更新参考

编辑:如果你有 Windows Server 2016,你可以启动一个 IIS docker 容器

https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/manage_docker

但您无法从运行 docker 的 Linux 服务器启动此 IIS docker 容器。

这同样适用于 SQL docker 容器

https://26thcentury.com/2016/01/03/dockerfile-to-create-sql-server-express-windows-container-image/

当您创建 Windows docker 容器时,您的 Dockerfile 以类似的内容开头

FROM windowsservercore

当您创建 Linux 容器时,您的 Dockerfile 将以

开头

FROM debian:jessie

FROM busybox

这样的

【讨论】:

    【解决方案2】:

    现在可以使用 Windows Subsystem for Linux 2 (WSL2) 在 Windows 10 上本地运行 Linux docker 映像。

    步骤:

    • 安装 WSL2。
    • 为 Windows 安装 Docker。
    • 转到 Docker 设置 -> 常规并勾选“使用基于 WSL 2 的引擎”。

    来源:https://docs.microsoft.com/en-us/windows/wsl/tutorials/wsl-containers

    【讨论】:

      最近更新 更多