Jak przekonwertować okno Vagrant na obraz dokera

Widziałem, że można przekonwertować obraz dokera na ramkę Vagrant.

Czy istnieje sposób na konwersję Ramki Vagrant na obraz dokera?

Author: the Tin Man, 2015-07-09

1 answers

Powtórzyłem to z pudełkami EC2 i Virtualbox w moim projekcie Github blacklabelops/centos. Przygotowałem plik Vagrantfile z niezbędną instalacją i możesz go wypróbować samodzielnie ze swoimi pudełkami Vagrant.

Pola EC2:

  • Tworzenie i udostępnianie obrazu AMI za pomocą https://github.com/katzj/ami-creator - Skrypty w moim repozytorium.

  • Następnie użyj Guestfish w celu wyodrębnienia obrazu do tarballa. - Skripts In my repozytorium.

  • Importuj tarball do Dockera. - Przykład w moim repozytorium.

I teraz z Vagrant Virtualbox, polecenia mogą być odtwarzane z mojego dostarczonego Vagrantfile. Po prostu Sklonuj repozytorium, podkręć je i wpisz:

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

VMDK Vagrant box można znaleźć w folderze Virtualbox, Zwykle ~/VirtualBox\ VMs/.

Po utworzeniu raw można zastosować Guestfish.

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

Uwaga: tty

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

Uwaga: wyjście z tty

Importowanie do Dockera:

$ cat mytry.xz | docker import - mytryimage

Zajrzyj do wnętrza pojemnika

$ docker run -it mytryimage bash
 14
Author: blacklabelops,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-09 23:07:53