Is there any way to clone a vagrant box that is already installed
Solution 1:
The easiest thing to do would be to package the pre-configured vagrant box and transfer the .box file to the other machine, add the box and run vagrant up
.
So the steps look like below:
- Package the pre-configured box =>
vagrant package --base preconfigured_vm --output /path/to/mybox.box
. Note that as per the docs, the--base
option should be the UUID of the machine, or the name VirtualBox gives the machine (found when opening the VirtualBox application). - transfer the box to the computer by using
scp
,rsync
or whatever... (you also start a web server quickly by usingpython -m http.server PORT
orruby -run -e httpd /path/to -p PORT
) - Init and start
vagrant init preconfigured_vm /path/to/mybox.box
- Done
Solution 2:
You just have to download the VM box only one time and make the all changes and configurations that you need and then re-package this one on a new box called "myVM.box".
Then you comment in the Vagrantfile the following line
#config.vm.box_url = "https://site_of_boxes..."
and used
config.vm.box = "myVM"
It starts up without download any VM.