Une boîte vagabonde tourne sur VirtualBox et je dois en faire une copie (avec toutes ses données de configuration et existantes), afin de pouvoir y apporter des modifications sans affecter l'original.
Le problème est que ma boîte d'origine est un paquet de fichiers - la connexion Internet avec laquelle je travaille est extrêmement lente, de sorte que quelqu'un d'autre a copié ses dossiers vagabonds et de boîtes virtuelles sur ma machine. Donc il n'y a pas
config.vm.box_url
utiliser.
Comment puis-je accomplir cela?
Edit: J'utilise Vagrant 1.2.2
Créez une nouvelle boîte à partir de votre vm existant:
cd dans le répertoire avec votre fichier Vagrant
run vagrant package
Ceci exportera un fichier box appelé package.box par défaut
lancez vagrant box add foo package.box
pour ajouter package.box à vos boîtes existantes. (En supposant que vous utilisez VirtualBox et non VMWare)
lancez vagrant box list
pour vérifier qu'il a bien été ajouté.
Maintenant, vous pouvez simplement créer un nouveau dossier, exécuter vagrant init
comme d'habitude et configurer votre boîte comme suit:
config.vm.box = "foo"
Le nouveau VM se transformera en données exactes présentes dans le précédent VM.
De plus, un nouveau produit des créateurs de Vagrant appelé Packer . Il fera la même chose, mais vous permettra de copier vos vm vers d'autres fournisseurs (Amazon, VirtualBox ect ..)
Mettre à jour
Les versions les plus récentes de Vagrant ont deux commandes qui rendent les étapes ci-dessus inutiles.
vagrant share
vagrant package
Vagrant share
chargera votre boîte sur atlasVagrant package
créera automatiquement un fichier .box.
Pour plus d'informations, saisissez vagrant --help