mirror of
https://github.com/kevingruesser/bootstrap-vz.git
synced 2025-08-24 07:26:29 +00:00
Update the main README
This commit is contained in:
parent
51144f7456
commit
c130368603
1 changed files with 44 additions and 13 deletions
57
README.rst
57
README.rst
|
@ -4,17 +4,24 @@ bootstrap-vz
|
||||||
bootstrap-vz is a bootstrapping framework for Debian that creates ready-to-boot
|
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.
|
images able to run on a number of cloud providers and virtual machines.
|
||||||
bootstrap-vz runs without any user intervention and
|
bootstrap-vz runs without any user intervention and
|
||||||
generates ready-to-boot images for `a number of virtualization
|
generates ready-to-boot images for the following virtualization
|
||||||
platforms <bootstrapvz/providers>`__.
|
platforms:
|
||||||
|
|
||||||
|
- `Amazon AWS EC2 <bootstrapvz/providers/ec2>`__
|
||||||
|
(supports both HVM and PVM; S3 and EBS backed;
|
||||||
|
`used for official Debian images <https://wiki.debian.org/Cloud/AmazonEC2Image/Jessie>`__;
|
||||||
|
`Quick start <#amazon-ec2-ebs-backed-ami>`__)
|
||||||
|
- `Google Compute Engine <bootstrapvz/providers/gce>`__
|
||||||
|
(`used by Google for official Debian images <https://wiki.debian.org/Cloud/GoogleComputeEngineImage>`__)
|
||||||
|
- `Oracle VirtualBox <bootstrapvz/providers/virtualbox>`__ (`with Vagrant support <#virtualbox-vagrant>`__)
|
||||||
|
- `Docker <bootstrapvz/providers/docker>`__ (`Quick start <#docker>`__)
|
||||||
|
- `Microsoft Azure <bootstrapvz/providers/azure>`__
|
||||||
|
- `KVM <bootstrapvz/providers/kvm>`__ (Kernel-based Virtual Machine)
|
||||||
|
|
||||||
Its aim is to provide a reproducable bootstrapping process using
|
Its aim is to provide a reproducable bootstrapping process using
|
||||||
`manifests <manifests>`__
|
`manifests <manifests>`__
|
||||||
as well as supporting a high degree of customizability through plugins.
|
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 <https://github.com/andsens/build-debian-cloud>`__
|
|
||||||
bootstrapper reached its limits.
|
|
||||||
|
|
||||||
Documentation
|
Documentation
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
|
@ -30,8 +37,7 @@ a rather peculiar and nifty way.
|
||||||
Installation
|
Installation
|
||||||
------------
|
------------
|
||||||
|
|
||||||
bootstrap-vz has a master branch for stable releases and a development
|
bootstrap-vz has a master branch into which stable feature branches are merged.
|
||||||
for, well, development.
|
|
||||||
|
|
||||||
After checking out the branch of your choice you can install the
|
After checking out the branch of your choice you can install the
|
||||||
python dependencies by running ``python setup.py install``. However,
|
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
|
``Ctrl+C`` a second time shortcuts that procedure, halts the cleanup and
|
||||||
quits the process.
|
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 <bootstrapvz/plugins/minimize_size>`__ plugin to reduce the image
|
||||||
|
size considerably.
|
||||||
|
|
||||||
|
|
||||||
VirtualBox Vagrant
|
VirtualBox Vagrant
|
||||||
~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -72,7 +95,7 @@ VirtualBox Vagrant
|
||||||
root@host:~# git clone https://github.com/andsens/bootstrap-vz.git # Clone the repo
|
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:~# 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:~# 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 <bootstrapvz/plugins/minimize_size>`__ plugin,
|
If you want to use the `minimize\_size <bootstrapvz/plugins/minimize_size>`__ plugin,
|
||||||
you will have to install the ``zerofree`` package and `VMWare Workstation`__ as well.
|
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:~# 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:~# 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:~# 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
|
To bootstrap S3 backed AMIs, bootstrap-vz will also need the
|
||||||
``euca2ools`` package. However, version 3.2.0 is required meaning you
|
``euca2ools`` package. However, version 3.2.0 is required meaning you
|
||||||
must however install it directly from the eucalyptus repository like
|
must install it directly from the eucalyptus repository like this:
|
||||||
this:
|
|
||||||
|
|
||||||
.. code:: sh
|
.. code:: sh
|
||||||
|
|
||||||
|
@ -151,3 +173,12 @@ Contributing
|
||||||
|
|
||||||
Contribution guidelines are described in the documentation under `Contributing <CONTRIBUTING.rst>`__.
|
Contribution guidelines are described in the documentation under `Contributing <CONTRIBUTING.rst>`__.
|
||||||
There's also a topic regarding `the coding style <CONTRIBUTING.rst#coding-style>`__.
|
There's also a topic regarding `the coding style <CONTRIBUTING.rst#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 <https://github.com/andsens/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.
|
||||||
|
|
Loading…
Add table
Reference in a new issue