使用ubuntu作为基本映像的Docker应用程序如何在Windows上运行?

时间:2016-07-17 13:32:14

标签: windows ubuntu docker dockerfile

我是docker的新手,并试图理解基本图像的概念。

假设我在Windows机器上有一个hello-world docker app,ubuntu作为Dockerfile中的基本映像。

现在要运行这个hello-world应用程序,是否docker会安装整个ubuntu来运行应用程序?

如果没有,那么如何在这里使用ubuntu基础映像以及Docker容器将如何促进基于ubuntu的应用程序和Windows操作系统之间的交换?

1 个答案:

答案 0 :(得分:6)

  

现在要运行这个hello-world应用程序,是否docker会安装整个ubuntu来运行应用程序?

不,使用的ubuntu image不是"整个ubuntu"。这是一个简化版本,没有全部X11图形层。仍然是180 MB但是:请参阅" Docker Base Image OS Size Comparison"。

现在,您宁愿使用Alpine image(5 MB):请参阅" Docker Official Images are Moving to Alpine Linux"

关于hello-world application specifically,没有涉及Ubuntu或Alpine。只需1.8 KB of C machine-code,它只能直接调用主机的Linux内核。

Docker容器通过系统调用使用Linux主机:请参阅" What is meant by shared kernel in Docker?"

在Windows上,所说的Linux主机是由运行boot2docker VM的VirtualBox VM提供的,该虚拟机是从TinyCore distro构建的。

使用更新的" Docker for Windows",同一个虚拟机通过Hyper-V Windows feature运行。