我一直在看Packer.io,并且很乐意使用它来提供/准备我们的开发人员使用的流浪者(VirtualBox)盒子.
我知道我可以使用VirtualBox Packer构建器使用VirtualBox构建盒子,但是找到Docker的层堆叠以提供更快的盒子开发过程.
如何使用Dockerfile生成图像,然后将其导出为Vagrant框?
最佳答案
从docker图像中查找docker图像的大小
REPOSITORY TAG IMAGE ID CREATED SIZE
mybuntu 1.01 7c142857o35 2 weeks ago 1.94 GB
基于映像docker运行mybuntu:1.01运行容器
从容器中创建QEMU图像,
另外,在第一个命令中使用图像的大小(seek = IMAGE_SIZE).
并且,对于docker export命令,从docker ps -a中检索相应的容器ID
dd if=/dev/zero of=mybuntu.img bs=1 count=0 seek=2G
mkfs.ext2 -F mybuntu.img
sudo mount -o loop mybuntu.img /mnt
docker export
使用qemu-utils转换为vmdk
sudo apt-get install qemu-utils
qemu-img convert -f raw -O vmdk mybuntu.img mybuntu.vmdk