I have a "suite" of 5 VMs I'd like to make, all Ubuntu Server 12.04 guest OSes but with radically different software stacks on top of the OS (one server is a "build server" with Subversion, Hudson, etc. installed on it; another server is an app server with JBoss, etc.).
Installing and configuring Ubuntu Server takes several hours. If at all possible, I'd like to only have to do this once (to get a "base" version of the OS installed on a VM) and then copy this "base" to the other 4. That way I save 2 - 3 hrs per machine and just need to focus on installing and configuring the applications for each server.
When I create a VM, I see three files created:
my-vm.vbox- I assume this is the VM
my-vm.vbox-prev- No idea what this is
my-vm.vdi- I assume this is the actual disk where the guest OS (my "base") is installed
Unfortunately I've already created all 5 VMs, and am in the process of installing Ubuntu Server on the first one, so my setup is like this:
build-srv.vdi(the VDI is initialized but has nothing in it)
app-srv.vdi(same, initialized, but with nothing in it)
- etc... (for all 5)
I'm in the process of installing Ubuntu Server on the build server (
build-srv). I'm hoping that once I'm finished, all of that configuration info will just be contained to
build-srv.vdi. In theory, I should be able to just copy-n-paste
build-srv.vdi to each of the other servers, and swap out their respective VDIs, right?
I'm sure I would have to also go into the VM settings and change the VDI somehow as well, but I'm not even sure if I'm on the right track.
Is what I need possible? If so, what do I need to do to configure each VM with the same copy of the OS instance I am currently in the middle of? If not, what are my options (besides repeating the same 2-hour install for each VM!)? Thanks in advance!