当前位置:  开发笔记 > 编程语言 > 正文

如何将Vagrant框转换为Docker镜像

如何解决《如何将Vagrant框转换为Docker镜像》经验,为你挑选了1个好方法。

我看到可以将Docker镜像转换为Vagrant盒子.

有没有办法将Vagrant框转换为Docker镜像?



1> blacklabelop..:

我在我的Github项目blacklabelops/centos中使用EC2盒和Virtualbox盒重播了这个.我准备了一个必要的安装Vagrantfile,你可以自己尝试使用你的Vagrant盒子.

EC2盒子:

使用https://github.com/katzj/ami-creator - 我的存储库中的Skripts 创建和配置AMI映像.

然后使用Guestfish将图像提取到tarball中. - 我的存储库中的Skripts.

在Docker中导入tarball. - 我的存储库中的示例.

现在使用Vagrant Virtualbox,可以使用我提供的Vagrantfile重播命令.只需克隆存储库,将其旋转并输入:

$ qemu-img convert -f vmdk -O raw MyTry-disk1.vmdk mytry.img

Vagrant框的VMDK可以在Virtualbox文件夹中找到,通常是〜/ VirtualBox\VMs /.

创建raw之后,您可以应用Guestfish.

$ guestfish -a mytry.img --ro
$ > run

注意:tty

$ > list-filesystems 
/dev/sda1: ext4
/dev/VolGroup/lv_root: ext4
/dev/VolGroup/lv_swap: swap
$ > mount /dev/VolGroup/lv_root /
$ > tar-out / - | xz --best >>  mytry.xz
$ > exit

注意:退出tty

导入docker:

$ cat mytry.xz | docker import - mytryimage

查看容器内部

$ docker run -it mytryimage bash

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有