J'ai une boîte vagabonde en marche (configurée avec une pile de LAMPES). Je dois le transférer sur un autre PC. Comment puis-je l'exporter? Je suppose que je peux obtenir un fichier (ou des fichiers) qui peuvent être copiés sur un autre PC, donc là je peux exécuter une commande pour importer la boîte vagrant.
108
Réponses:
Vous avez deux façons de faire cela, je l'appellerai manière sale et manière propre :
1. La manière sale
Créez une boîte à partir de votre environnement virtuel actuel, en utilisant la
vagrant package
commande:http://docs.vagrantup.com/v2/cli/package.html
Copiez ensuite la boîte sur l'autre PC, ajoutez-la en utilisant
vagrant box add
et exécutez-lavagrant up
comme d'habitude.Gardez à l'esprit que les fichiers de votre répertoire de travail (celui avec le
Vagrantfile
) sont partagés lorsque la machine virtuelle démarre, vous devez donc également le copier sur l'autre PC.2. La voie propre
Théoriquement, il ne devrait jamais être nécessaire d'exporter / importer avec Vagrant. Si vous avez la prévoyance d'utiliser l'approvisionnement pour configurer l'environnement virtuel (chef, puppet, ansible) et un système de contrôle de version comme git pour votre répertoire de travail, copier un environnement serait à ce stade simple comme en cours d'exécution:
la source
Mon disque dur dans mon Mac émettait des bips sonores au milieu d'un projet, j'ai donc décidé d'installer un SSD. J'avais besoin de déplacer mon projet d'un disque à un autre. Quelques points à considérer:
C'est ce qui a fonctionné pour moi:
J'ai eu quelques problèmes avec les ajouts de VB Guest.
Je les ai corrigés avec cette solution .
la source
vagrant box list
: 0bin.net/paste/iCiaqNhU-i3bbfY2#-KDiXYcRFni1RNgNJhOBrIsC'est en fait assez simple
Enveloppez votre machine vagabonde
vagrant package --base [machine name as it shows in virtual box] --output /Users/myuser/Documents/Workspace/my.box
copiez la boîte sur votre télécommande
lancez la boîte sur votre machine distante en exécutant
vagrant init [machine name as it shows in virtual box] /Users/myuser/Documents/Workspace/my.box
Courir
vagrant up
la source
VBoxManage list vms
. Après, vous pouvez simplement copier et faire ce qui est dit dans @Phil 2ème et 4ème étapes. :) Ouais.scotch/box (virtualbox, 3.0)
). Ma commande - machines virtuelles avec identifiant, par exemple:"Win10 - SandBox" {bc251c06-501f-4c0f-bgfa-21f2815ba2cd}
Le moyen le plus simple serait de conditionner la boîte Vagrant, puis de la copier (par exemple
scp
oursync
) sur l'autre PC, de l'ajouter etvagrant up
;-)Pour connaître les étapes détaillées, consultez la section
=>
Existe-t-il un moyen de cloner une boîte vagabonde déjà installée?la source
Aucune des réponses ci-dessus n'a fonctionné pour moi. J'ai travaillé pendant 2 jours sur la manière de migrer une machine Vagrant + VirtualBox d'un ordinateur à un autre ... C'est possible!
Tout d'abord, vous devez comprendre que la machine virtuelle est séparée de votre dossier de synchronisation / partagé. Ainsi, lorsque vous emballez votre machine, vous l'emballez sans vos fichiers, mais avec les bases de données.
Qu'as tu besoin de faire:
1- Ouvrez le CMD de votre ordinateur 1 machine hôte (ligne de commande. Ouvrez-le en tant qu'administrateur avec le bouton droit -> "Exécuter en tant qu'administrateur") et accédez à vos fichiers installés vagrant. Sur mon cas: C: / VVV Vous verrez votre Vagrantfile ainsi que ces dossiers:
Le dossier / www / est l'endroit où j'ai mon dossier de synchronisation avec mes domaines de développement. Vous pouvez avoir votre dossier de synchronisation à un autre endroit, assurez-vous simplement de comprendre ce que vous faites. De plus, / config et / database sont des dossiers de synchronisation.
2- Exécutez cette commande:
vagrant package --vagrantfile Vagrantfile
(Cette commande fait un package de votre machine virtuelle en utilisant votre configuration Vagrantfile.)
Voici ce que vous pouvez lire dans la documentation de Vagrant sur la commande:
https://www.vagrantup.com/docs/cli/package.html
Une fois terminé, vous aurez un fichier package.box.
3- Copiez tous ces fichiers (/ config, / database, Vagrantfile, package.box, etc.) et collez-les sur votre ordinateur 2 juste à l'endroit où vous souhaitez installer votre machine virtuelle (sur mon cas D: / VVV).
Vous avez maintenant une copie de tout ce dont vous avez besoin sur votre ordinateur hôte.
4- lancez ceci:
vagrant box add package.box --name VVV
(Le --name est utilisé pour nommer votre machine virtuelle. Dans mon cas, il s'appelle VVV) (Vous pouvez utiliser --force si vous avez déjà une machine virtuelle avec ce nom et que vous souhaitez l'écraser. (À utiliser avec précaution!))
Cela décompressera votre nouvelle machine virtuelle vagabonde.
5- Une fois terminé, exécutez:
vagrant up
La machine va s'installer et vous devriez le voir sur le "Oracle virtual machine box manager". Si vous ne pouvez pas voir la machine virtuelle, essayez d'exécuter la boîte Oracle VM en tant qu'administrateur (clic droit -> Exécuter en tant qu'administrateur)
Vous pouvez maintenant que tout est ok, mais n'oubliez pas de voir si vos hôtes sont comme prévu:
6- C'est peut-être une bonne idée de copier votre fichier hôte de votre ordinateur 1 vers votre ordinateur 2. Ou de copier les lignes dont vous avez besoin. Dans mon cas, voici les hôtes dont j'ai besoin:
Où le 192.168.50.4 est l'adresse IP de ma machine virtuelle et test.dev et vvv.dev développent des hôtes.
J'espère que cela peut vous aider :) Je serai heureux si vous donnez votre avis.
Quelques particularités de mon cas que vous pouvez trouver:
Quand j'ai couru vagabond, il y avait un problème avec mysql, ça ne fonctionnait pas. J'ai dû courir sur le serveur virtuel (clic droit sur la machine virtuelle oracle -> Afficher la console):
apt-get install mysql-server
Après cela, j'ai recommencé à vagabonder et tout fonctionnait mais sans données sur les bases de données. J'ai donc fait un mysqldump all-tables à partir de l'ordinateur 1 et les ai téléchargés sur l'ordinateur 2.
AUTRES REMARQUES: Ma machine virtuelle n'est pas exactement sur l'ordinateur 1 et l'ordinateur 2. Par exemple, j'ai fait il y a quelque temps une configuration interne pour utiliser NFS (pour accélérer les dossiers de synchronisation du serveur) et j'avais besoin de réexécuter cette commande sur l'ordinateur 2 hôte:
vagrant plugin install vagrant-winnfsd
la source
Comme indiqué dans
Comment puis-je changer où Vagrant recherche son disque dur virtuel?
l'état de la machine virtuelle est stocké dans un dossier VirtualBox prédéfini. La copie de la machine (dossier) correspondante en plus de votre projet vagrant sur votre autre hôte devrait préserver l'état de votre machine virtuelle.
la source
À partir de 2019, il existe une sous-commande:
vagrant box repackage
Vous pouvez trouver
name
provider
etversion
en exécutantvagrant box list
La sortie de
vagrant box repackage
est un fichier appelépackage.box
qui est essentiellement un fichier tgz dont le contenu peut être répertorié comme ci-dessous:la source