Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Rapid VM builder
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
name: rvmb - Rapid VM builder author: Miroslav Safr <email@example.com> web: http://safrm.net/projects/rvmb description: Rapid VM builder for qemu-kvm based portable VMs Base use cases: A. Portable VMs - can be run from usb drive or just copied (2 files) between 2 computers (rvmb does not have to be even installed) B. Rapid installation - there is no need to have anything (default targets or own target file) to recreate standard VMs quickly and repetitavely C. VM backing up - VM image can be zipped and restored by just copying one file (6,4GB disk compressed to 1,3GB), QCOW2 images can also use qemu snapshots D. Clonning environments - very easy clonning existing VM into the same environments - install once reuse image many times E. CI intergations - possible to run and control without gui (from for example jenkins) content: rvmb .................. main script install.sh ............ installation (from source) script Usage 1: Create and connect VM: #check available targets $ rvmb list-targets #create and install VM #there can be passed own configuration file based on teplate (-t <file>) #or created clone of the same VM configuration (-c <number>) $ rvmb install ubuntu-12.04-i386-desktop #.. manual steps during installation #running the VM $ rvmb start ubuntu-12.04-desktop-i386 #connect running VM $ rvmb connect-ssh ubuntu-12.04-i386-desktop Usage 2:Try live iso : $ rvmb run-live-iso ubuntu-12.04-x86_64-desktop Usage 3: Clone VM0 to VM1 and connect between 2 VMs : Steps from Usage 1 rvmb start ubuntu-12.04-i386-desktop -c 1 #connect from VM0 to VM1 rvmb connect-ssh ubuntu-12.04-i386-desktop VM0$ ssh 192.168.101.2 -p 8024 #connect from VM1 to VM0 rvmb connect-ssh ubuntu-12.04-i386-desktop -c 1 VM1$ ssh 192.168.101.2 -p 8023 Tested targets + ports table: 8XYZ X .... distro + arch 0 ub-i386, 1 ub64b .. Y ... release or type Z .. instances (10 is enough) ubuntu-12.04-i386-desktop 8001 ubuntu-12.04-x86_64-desktop 8101 ubuntu-12.04-x86_64-mini 8111 ubuntu-14.04-i386-desktop 8011 ubuntu-14.04-x86_64-desktop 8111 fedora-20-i586-desktop 8201 fedora-20-i586-mini 8211 fedora-20-i586-netinst 8221 fedora-20-x86_64-desktop 8301 fedora-20-x86_64-mini 8361