diff --git a/README.rst b/README.rst index 9dc31db..c2aa079 100644 --- a/README.rst +++ b/README.rst @@ -4,17 +4,24 @@ bootstrap-vz bootstrap-vz is a bootstrapping framework for Debian that creates ready-to-boot images able to run on a number of cloud providers and virtual machines. bootstrap-vz runs without any user intervention and -generates ready-to-boot images for `a number of virtualization -platforms `__. +generates ready-to-boot images for the following virtualization +platforms: + +- `Amazon AWS EC2 `__ + (supports both HVM and PVM; S3 and EBS backed; + `used for official Debian images `__; + `Quick start <#amazon-ec2-ebs-backed-ami>`__) +- `Google Compute Engine `__ + (`used by Google for official Debian images `__) +- `Oracle VirtualBox `__ (`with Vagrant support <#virtualbox-vagrant>`__) +- `Docker `__ (`Quick start <#docker>`__) +- `Microsoft Azure `__ +- `KVM `__ (Kernel-based Virtual Machine) + Its aim is to provide a reproducable bootstrapping process using `manifests `__ as well as supporting a high degree of customizability through plugins. -bootstrap-vz was coded from scratch in python once the bash script -architecture that was used in the -`build-debian-cloud `__ -bootstrapper reached its limits. - Documentation ------------- @@ -30,8 +37,7 @@ a rather peculiar and nifty way. Installation ------------ -bootstrap-vz has a master branch for stable releases and a development -for, well, development. +bootstrap-vz has a master branch into which stable feature branches are merged. After checking out the branch of your choice you can install the python dependencies by running ``python setup.py install``. However, @@ -63,6 +69,23 @@ where volumes are detached/deleted and temporary files removed, pressing ``Ctrl+C`` a second time shortcuts that procedure, halts the cleanup and quits the process. +Docker +~~~~~~ + +.. code:: sh + + user@host:~$ sudo -i # become root + root@host:~# git clone https://github.com/andsens/bootstrap-vz.git # Clone the repo + root@host:~# apt-get install debootstrap python-pip # Install dependencies from aptitude + root@host:~# pip install termcolor jsonschema fysom docopt pyyaml pyrfc3339 # Install python dependencies + root@host:~# bootstrap-vz/bootstrap-vz bootstrap-vz/manifests/docker/jessie-minimized.yml + +The resulting image should be no larger than 82 MB (81.95 MB to be exact). +The manifest ``jessie-minimized.yml`` uses the +`minimize\_size `__ plugin to reduce the image +size considerably. + + VirtualBox Vagrant ~~~~~~~~~~~~~~~~~~ @@ -72,7 +95,7 @@ VirtualBox Vagrant root@host:~# git clone https://github.com/andsens/bootstrap-vz.git # Clone the repo root@host:~# apt-get install qemu-utils debootstrap python-pip # Install dependencies from aptitude root@host:~# pip install termcolor jsonschema fysom docopt pyyaml # Install python dependencies - root@host:~# bootstrap-vz/bootstrap-vz bootstrap-vz/manifests/virtualbox-vagrant.manifest.yml + root@host:~# bootstrap-vz/bootstrap-vz bootstrap-vz/manifests/examples/jessie-vagrant.yml If you want to use the `minimize\_size `__ plugin, you will have to install the ``zerofree`` package and `VMWare Workstation`__ as well. @@ -88,12 +111,11 @@ Amazon EC2 EBS backed AMI root@host:~# git clone https://github.com/andsens/bootstrap-vz.git # Clone the repo root@host:~# apt-get install debootstrap python-pip # Install dependencies from aptitude root@host:~# pip install termcolor jsonschema fysom docopt pyyaml boto # Install python dependencies - root@host:~# bootstrap-vz/bootstrap-vz bootstrap-vz/manifests/ec2-ebs-debian-official-amd64-pvm.manifest.yml + root@host:~# bootstrap-vz/bootstrap-vz bootstrap-vz/manifests/official/ec2/ebs-jessie-amd64-hvm.yml To bootstrap S3 backed AMIs, bootstrap-vz will also need the ``euca2ools`` package. However, version 3.2.0 is required meaning you -must however install it directly from the eucalyptus repository like -this: +must install it directly from the eucalyptus repository like this: .. code:: sh @@ -151,3 +173,12 @@ Contributing Contribution guidelines are described in the documentation under `Contributing `__. There's also a topic regarding `the coding style `__. + +Before bootstrap-vz +------------------- + +bootstrap-vz was coded from scratch in python once the bash script +architecture that was used in the +`build-debian-cloud `__ +bootstrapper reached its limits. The project has since grown well beyond +its original goal, but has kept the focus on Debian images.