---
name: "bootstrap-vz"
section: "1"
platform: "linux"
package: "bootstrap-vz"
version: "0.9.11+20180121git-1"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/bootstrap-vz"
---

# bootstrap-vz(1)

program is creating Debian images to be run in cloud environments like Amazons EC2, OpenStack, Google Cloud Compute and other which are sharing API with those

## NAME

bootstrap-vz - program is creating Debian images to be run in cloud environments like Amazons EC2, OpenStack, Google Cloud Compute and other which are sharing API with those

## SYNOPSIS

**bootstrap-vz** \[options\] MANIFEST

## DESCRIPTION

bootstrap-vz is written in python which can be fairly easily customised if needed. Whole configuration for the final image is provided by json manifest \[MANIFEST\]. Manifest available options are explained below in MANIFEST section, if there is information which is lacking please file a bug against bootstrap-vz package (patches always welcome).

**bootstrap-vz must be run from within AWS instance to create Debian image.**

**Default user** to log into created image is: **root**

## \[OPTIONS\]

- **--log** *path*

  Log to given directory \[default: /var/log/bootstrap-vz\].\
   If \<path\> is " **-** " file logging will be disabled.\

- **--pause-on-error**

  Pause on error, before rollback\

- **--dry-run**

  Don't actually run the tasks\

- **--debug**

  Print debugging information\

- **-h**,**--help**

  show this help

## \[MANIFEST\]

Manifest is a yaml file providing final image specification, standard yaml rules apply to it and the following fields should or may be used (depending on final image type).\
 Below are describe specific fields and fields within sections, all should be in strict yaml format put into manifest file.

*provider*- \[kvm\|ec2\|gce\|virtualbox\|azure\] targeted platform where final image produced by bootstrap-vz is going to be used\

**virtualization -** \[pvm\|hvm\|virtio\|ide\] type of vitalization which is going to be used to run final image\
 **enhanced\_networking -**

*bootstrapper*

**mount\_dir -** where all bootstraped files are going to be installed\
 **mirror -** Debian mirror to use to fetch all required files (suggestion: http://http.debian.net/debian)\
 **workspace -**

*image*

**name -** name for the finale image\
 **description -** final image description which will give a bit more information how this image is different from others **bucket -** \[ONLY FOR S3 BACKED IMAGES\] S3 bucket name for storage

*system* (OS details)

**release -** \[wheezy\|jessie\] Debian release name\
 **architecture -** \[amd64\|i386\]\
 **timezone -** ex. UTC\
 **locale -** ex. en\_GB\
 **charmap -** ex. UTF-8\

*volume* (virtual HDD setup)\

**backing -** \[ebs\|s3\|raw\]\
 **filesystem -** any supported by the kernel\
 **size -** how big root main image should be\
 **loopback\_dir -** \[ONLY FOR KVM & VIRTAUALBOX PROVIDERS\]

*plugins* (plugins available, for specific options for each plugin please look into individual plugin documentation)

**admin\_user**\
 **backports**\
 **build\_metadata**\
 **convert\_image**\
 **opennebula**\
 **prebootstrapped**\
 **root\_password**\
 **user\_packages**\

*credentials* (AWS specific entries)

**access-key -** AWS Access Key\
 **secret-key** AWS Secret Key\
 **certificate -** \[S3 BACKED IMAGES\]\
 **private-key -** \[S3 BACKED IMAGES\]\
 **user-id -** \[S3 BACKED IMAGES\]\

## MANIFEST - example

```
---
provider:
  name: ec2
  virtualization: hvm
  enhanced_networking: simple
  credentials:
    access-key: AFAKEACCESSKEYFORAWS
    secret-key: thes3cr3tkeyf0ryourawsaccount/FS4d8Qdva
bootstrapper:
  workspace: /target
image:
  name:
debian-{system.release}-{system.architecture}-{provider.virtualization}-{%Y}-{%m}-{%d}-ebs
  description: Debian {system.release} {system.architecture}
system:
  release: wheezy
  architecture: amd64
  bootloader: extlinux
  charmap: UTF-8
  locale: en_US
  timezone: UTC
volume:
  backing: ebs
  partitions:
    type: none
    root:
      filesystem: ext4
      size: 8GiB
packages:
  mirror: http://httpredir.debian.org/debian
plugins:
  cloud_init:
    metadata_sources: Ec2
    username: admin
```

Example manifests can be found in */usr/share/doc/bootstrap-vz/examples/manifests* more manifests specific information can be found in [*bootstrap-vz*(3)](/bootstrap-vz/3.md) or online docs at *http://bootstrap-vz.readthedocs.org/en/master/*

## AUTHOR

Marcin Kulisz \<debian@kulisz.net\>

## SEE ALSO

**debootstrap**(1), [**bootstrap-vz**(3)](/bootstrap-vz/3.md), [**bootstrap-vz-remote**(1)](/bootstrap-vz-remote/1.md), [**bootstrap-vz-server**(1)](/bootstrap-vz-server/1.md)
