是否可以从包含OS的.img文件创builddocker图像
是否有可能将包含OS(Arch Linux)的.img
文件转换为Docker镜像? 更确切地说,我想dockerize RuneAudio树莓派图像。
从完整的操作系统镜像生成Docker镜像往往是一个次优的过程。 操作系统映像将包括Docker环境中根本不需要的各种东西,这只是意味着生成的映像将不必要的大。
也就是说,如果你想尝试这个, libguestfs包中的guestfish
命令使得这非常简单:
guestfish --ro -a RuneAudio_rpi_0.3-beta_20141029_2GB.img -m /dev/sda5:/ tar-out / - | docker import - runeaudio
这将创buildRuneAudio_rpi_0.3-beta_20141029_2GB.img
磁盘映像的内容的runeaudio
泊坞窗图像。 请注意,这当然只能在运行在Raspberry Pi上的Docker下运行,并且生成的映像不一定会在没有进一步修改的情况下运行。
你也可以通过在本地安装磁盘镜像来完成同样的事情:
losetup -P /dev/loop0 RuneAudio_rpi_0.3-beta_20141029_2GB.img mount /dev/loop0p5 /mnt tar -C /mnt -cf - | docker import - runeaudio umount /mnt losetup -d /dev/loop0
我喜欢guestfish
因为它不需要root访问权限,并且不需要使用循环设备和挂载点,所以安装和清理的时间更less。