无法运行从 ISO 创建的 docker 映像

pra*_*mar 5 docker dockerhub dockerfile

在这里,我尝试从 ubuntu 14.04 ISO 文件创建 docker 映像,因为知道 ubuntu 14.04 已经在 docker hub 中可用。因为后来我必须为 Suse10 和 Suse11[sp1 64bit] 创建 docker 镜像,而这在 docker hub 中不可用。

我能够使用以下命令从 ubuntu 14.04 ISO 创建 docker 映像

# mkdir rootfs
# mount -o loop /path/to/iso rootfs
# tar -C rootfs -c . | docker import - newubuntu
Run Code Online (Sandbox Code Playgroud)

成功创建上面的图像后,我可以将docker images其列出

root@ubuntu:~# docker images
Run Code Online (Sandbox Code Playgroud)

创建的存储库标签图像 ID 虚拟大小

newubuntu 最新 1dcd1b632d37 5 天前 1.015 GB

但是当我尝试运行图像时,我收到以下错误消息

root@ubuntu:~# docker run -t -i newubuntu /bin/bash
Run Code Online (Sandbox Code Playgroud)

2015/03/11 06:59:16 exec: "/bin/bash": stat /bin/bash: 没有这样的文件或目录

请让我知道如何解决此错误。我应该能够从该映像创建容器并安装其他应用程序。

小智 3

您正在从 ubuntu 的 iso 构建映像,但您真正想要的是从 ubuntu 安装构建映像。

你需要做的是:

  • 从虚拟机内的 iso 安装 ubuntu

  • 对虚拟机的 / 进行存档(这可以通过 完成cd / && tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system /

  • 使用 docker 导入(这可以通过 完成docker import /path/to/your/backup.tar.gz

我希望这有帮助