Tengo una caja vagabunda en funcionamiento (configurada con una pila LAMP). Necesito transferirlo a otra PC. ¿Cómo puedo exportarlo? Supongo que puedo obtener un archivo (o archivos) que se pueden copiar a otra PC, así que allí puedo ejecutar algún comando para importar el cuadro vagabundo.
virtual-machine
virtualbox
vagrant
Eugenio
fuente
fuente
Respuestas:
Tienes dos formas de hacer esto, lo llamaré forma sucia y forma limpia :
1. El camino sucio
Cree una caja desde su entorno virtual actual, usando el
vagrant package
comando:http://docs.vagrantup.com/v2/cli/package.html
Luego copie la caja en la otra computadora, agréguela usando
vagrant box add
y ejecútela usandovagrant up
como de costumbre.Tenga en cuenta que los archivos en su directorio de trabajo (el que tiene
Vagrantfile
) se comparten cuando se inicia la máquina virtual, por lo que también debe copiarlos en la otra computadora.2. El camino limpio
En teoría, nunca debería ser necesario exportar / importar con Vagrant. Si tiene la previsión de utilizar el aprovisionamiento para configurar el entorno virtual (chef, puppet, ansible) y un sistema de control de versiones como git para su directorio de trabajo, copiar un entorno sería en este punto tan simple como ejecutar:
fuente
El disco duro de mi Mac emitía pitidos en medio de un proyecto, así que decidí instalar un SSD. Necesitaba mover mi proyecto de un disco a otro. Algunas cosas a considerar:
Esto es lo que funcionó para mí:
Tuve algunos problemas con las adiciones de VB Guest.
Los arreglé con esta solución .
fuente
vagrant box list
: 0bin.net/paste/iCiaqNhU-i3bbfY2#-KDiXYcRFni1RNgNJhOBrIs/…Esto es realmente bastante simple
Envuelve tu máquina vagabunda
vagrant package --base [machine name as it shows in virtual box] --output /Users/myuser/Documents/Workspace/my.box
copia la caja a tu control remoto
inicie el cuadro en su máquina remota ejecutando
vagrant init [machine name as it shows in virtual box] /Users/myuser/Documents/Workspace/my.box
correr
vagrant up
fuente
VBoxManage list vms
. Después, puede copiar y hacer lo que se indica en los pasos 2 y 4 de @Phil. :) Sí.scotch/box (virtualbox, 3.0)
). Mi comando - máquinas virtuales con identificador, por ejemplo:"Win10 - SandBox" {bc251c06-501f-4c0f-bgfa-21f2815ba2cd}
La forma más fácil sería empaquetar la caja Vagrant y luego copiarla (por ejemplo,
scp
orsync
) a la otra PC, agregarla yvagrant up
;-)Para conocer los pasos detallados, consulte esto
=>
¿Hay alguna forma de clonar una caja de vagabundos que ya está instalada?fuente
Ninguna de las respuestas anteriores funcionó para mí. He estado 2 días trabajando en la forma de migrar una máquina Vagrant + VirtualBox de una computadora a otra ... ¡Es posible!
Primero, debe comprender que la máquina virtual está separada de su carpeta de sincronización / compartida. Entonces, cuando empaca su máquina, la empaqueta sin sus archivos, pero con las bases de datos.
Qué necesitas hacer:
1- Abra el CMD de la máquina host de su computadora 1 (Línea de comando. Ábralo como Adminitrador con el botón derecho -> "Ejecutar como administrador") y vaya a sus archivos vagabundos instalados. En mi caso: C: / VVV Verá su Vagrantfile y también estas carpetas:
La carpeta / www / es donde tengo mi carpeta de sincronización con mis dominios de desarrollo. Puede tener su carpeta de sincronización en otro lugar, solo asegúrese de comprender lo que está haciendo. También / config y / database son carpetas de sincronización.
2- ejecuta este comando:
vagrant package --vagrantfile Vagrantfile
(Este comando hace un paquete de su máquina virtual usando su configuración de Vagrantfile).
Esto es lo que puede leer en la documentación de Vagrant sobre el comando:
https://www.vagrantup.com/docs/cli/package.html
Cuando termine, tendrá un archivo package.box.
3- Copia todos estos archivos (/ config, / database, Vagrantfile, package.box, etc.) y pégalos en tu Computadora 2 justo donde quieres instalar tu máquina virtual (en mi caso D: / VVV).
Ahora tiene una copia de todo lo que necesita en el host de su computadora 2.
4- ejecuta esto:
vagrant box add package.box --name VVV
(El --name se usa para nombrar su máquina virtual. En mi caso se llama VVV) (Puede usar --force si ya tiene una máquina virtual con este nombre y desea sobrescribirla. (¡Use con cuidado!))
Esto descomprimirá su nueva máquina virtual vagabunda.
5- Cuando hayas terminado, ejecuta:
vagrant up
La máquina se instalará y debería verla en el "Administrador de cajas de máquinas virtuales de Oracle". Si no puede ver la máquina virtual, intente ejecutar el cuadro de Oracle VM como administrador (haga clic derecho -> Ejecutar como administrador)
Ahora puede tener todo bien, pero recuerde ver si sus hosts son como esperaba:
6- Tal vez sea una buena idea copiar su archivo de host de su Computadora 1 a su Computadora 2. O copiar las líneas que necesita. En mi caso, estos son los hosts que necesito:
Donde 192.168.50.4 es la IP de mi máquina virtual y test.dev y vvv.dev están desarrollando hosts.
Espero que esto pueda ayudarlo :) Estaré feliz si envía sus comentarios.
Algunas particularidades de mi caso que puedes encontrar:
Cuando corrí vagrant up, hubo un problema con mysql, no estaba funcionando. Tuve que ejecutar en el servidor virtual (haga clic derecho en la máquina virtual de Oracle -> Mostrar consola):
apt-get install mysql-server
Después de esto, volví a correr vagabundo y todo estaba funcionando pero sin datos en las bases de datos. Así que hice un mysqldump all-tables desde la Computadora 1 y las subí a la Computadora 2.
OTRAS NOTAS: Mi máquina virtual no está exactamente en la Computadora 1 y la Computadora 2. Por ejemplo, hice hace algún tiempo una configuración interna para usar NFS (para acelerar las carpetas de sincronización del servidor) y necesitaba ejecutar nuevamente este comando en la Computadora 2 anfitrión:
vagrant plugin install vagrant-winnfsd
fuente
Como se indica en
¿Cómo puedo cambiar dónde busca Vagrant su disco duro virtual?
el estado de la máquina virtual se almacena en una carpeta VirtualBox predefinida. Copiar la máquina correspondiente (carpeta) además de su proyecto vagabundo a su otro host debería preservar el estado de su máquina virtual.
fuente
A partir de 2019 hay un subcomando:
vagrant box repackage
Puedes encontrar
name
provider
yversion
corriendovagrant box list
La salida
vagrant box repackage
es un archivo llamadopackage.box
que es básicamente un archivo tgz cuyo contenido se puede enumerar a continuación:fuente