在了解docker以及如何创建最小图像的同时,我遇到了这个命令: -
Third Party
这会创建一个最小的泊坞窗图像。
我无法理解当tar cv --files-from /dev/null | docker import - scratch
时会发生什么。如果我在终端上运行此命令,则无法输出。
如果我单独运行tar cv --files-from /dev/null
,它就会永远挂在那里。
那么这两个命令的组合如何工作?我仍然感到困惑,这是如何工作的,并试图找出实际的工作,任何帮助/指导将非常感激。
答案 0 :(得分:2)
正在运行tar cv --files-from /dev/null
正在生成输出;你无法看到它。试试这个:
tar cv --files-from /dev/null | od -a
tar
命令生成一个空的tar档案。
docker import - scratch
命令从stdin
导入tar存档,并将其命名为scratch
。从手册页:
docker-import - 创建一个空的文件系统映像并导入 tarball的内容(.tar,.tar.gz,.tgz,.bzip,.tar.xz,.txz) 进入它,然后选择标记它。
由于您正在为它提供一个空档案,因此您将获得一个空的Docker镜像。