1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232
|
.\" (C) Copyright 2012 Marcin Kulisz (kuLa) <debian@kulisz.net>,
.TH BOOTSTRAP\-VZ 1 "June 2, 2014"
.SH 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
.SH SYNOPSIS
.B bootstrap\-vz
.RI [options]\ MANIFEST
.SH 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).
.sp 1
.B bootstrap\-vz must be run from within AWS instance to create Debian image.
.sp 1
.B Default user
to log into created image is:
.B root
.SH [OPTIONS]
.TP
.BI \-\-log\ path
Log to given directory [default: /var/log/bootstrap-vz].
.br
If <path> is "
.B \-
" file logging will be disabled.
.br
.TP
.BI \-\-pause\-on\-error
Pause on error, before rollback
.br
.TP
.BI \-\-dry\-run
Don't actually run the tasks
.br
.TP
.BI \-\-debug
Print debugging information
.br
.TP
.BR \-h , \-\-help
show this help
.PP
.SH [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).
.br
Below are describe specific fields and fields within sections, all should be in
strict yaml format put into manifest file.
.IR provider \-
[kvm|ec2|gce|virtualbox|azure] targeted platform where final image produced by
bootstrap\-vz is going to be used
.\" man page reviewed until this point
.br
.RS
.B virtualization \-
[pvm|hvm|virtio|ide] type of vitalization which is going to be used to run final
image
.br
.B enhanced\_networking \-
.RE
.br
.IR bootstrapper
.RS
.B mount_dir \-
where all bootstraped files are going to be installed
.br
.B mirror \-
Debian mirror to use to fetch all required files (suggestion:
http://http.debian.net/debian)
.br
.B workspace \-
.RE
.IR image
.RS
.B name \-
name for the finale image
.br
.B description \-
final image description which will give a bit more information how this image is
different from others
.B bucket \-
[ONLY FOR S3 BACKED IMAGES] S3 bucket name for storage
.RE
.IR system
(OS details)
.RS
.br
.B release \-
[wheezy|jessie] Debian release name
.br
.B architecture \-
[amd64|i386]
.br
.B timezone \-
ex. UTC
.br
.B locale \-
ex. en_GB
.br
.B charmap \-
ex. UTF-8
.br
.RE
.IR volume
(virtual HDD setup)
.br
.RS
.B backing \-
[ebs|s3|raw]
.br
.B filesystem \-
any supported by the kernel
.br
.B size \-
how big root main image should be
.br
.B loopback_dir \-
[ONLY FOR KVM & VIRTAUALBOX PROVIDERS]
.RE
.IR plugins
(plugins available, for specific options for each plugin please look into
individual plugin documentation)
.RS
.B admin_user
.br
.B backports
.br
.B build_metadata
.br
.B convert_image
.br
.B opennebula
.br
.B prebootstrapped
.br
.B root_password
.br
.B user_packages
.br
.RE
.IR credentials
(AWS\ specific\ entries)
.RS
.B access\-key \-
AWS Access Key
.br
.B secret\-key
AWS Secret Key
.br
.B certificate \-
[S3 BACKED IMAGES]
.br
.B private\-key \-
[S3 BACKED IMAGES]
.br
.B user\-id \-
[S3 BACKED IMAGES]
.br
.RE
.PP
.SH MANIFEST - example
.nf
---
.br
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
.fi
.br
.PP
Example manifests can be found in
.IR /usr/share/doc/bootstrap\-vz/examples/manifests
more manifests specific information can be found in
.IR bootstrap\-vz (3)
or online docs at
.IR http://bootstrap\-vz.readthedocs.org/en/master/
.PP
.SH AUTHOR
Marcin Kulisz <debian@kulisz.net>
.SH SEE ALSO
.BR debootstrap (1),
.BR bootstrap\-vz (3),
.BR bootstrap\-vz\-remote (1),
.BR bootstrap\-vz\-server (1)
|