summaryrefslogtreecommitdiffstats
path: root/share/man/container-build.1.rst
blob: 19e935933fa76ba009f8251d4210d17d3f46fba7 (plain)
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
.. Open Infrastructure: compute-tools

.. Copyright (C) 2014-2024 Daniel Baumann <daniel.baumann@open-infrastructure.net>
..
.. SPDX-License-Identifier: GPL-3.0+
..
.. This program is free software: you can redistribute it and/or modify
.. it under the terms of the GNU General Public License as published by
.. the Free Software Foundation, either version 3 of the License, or
.. (at your option) any later version.
..
.. This program is distributed in the hope that it will be useful,
.. but WITHOUT ANY WARRANTY; without even the implied warranty of
.. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.. GNU General Public License for more details.
..
.. You should have received a copy of the GNU General Public License
.. along with this program.  If not, see <https://www.gnu.org/licenses/>.

===============
container-build
===============

-----------------
Build a container
-----------------

:manual section: 1
:manual group: Open Infrastructure

Synopsis
========

| **container build** ['OPTIONS']
| **cnt b** ['OPTIONS']

Description
===========

The **container build** command builds a container based on a script.

Scripts
-------

The following build scripts are available:

debootstrap:
  Basic script to build Debian based container, see
  container-build-debootstrap(1).

debconf:
  Advanced script to automatically build Debian based container, see
  container-build-debconf(1).

default:
  Symlink (if existing) to a build script which is used if no script was
  specified. On Debian based system this can be managed through
  update-alternatives(1), i.e. 'sudo update-alternatives --config
  container_build-script'.

Options
=======

The following **container build** options are available:

-n, --name='NAME':
  Specify container name.

-c, --capability='CAPABILITY':
  Specify capabilities to grant, see capabilities(7).

-d, --drop-capability='DROP_CAPABILITY':
  Specify capabilities to drop, see capabilities(7).

-s, --script='SCRIPT':
  Specify container build script, defaults to 'debootstrap'.

-v, --verbose:
  Explain what is being done.

-b, --bind='DIRECTORY:DIRECTORY[:OPTIONS][;DIRECTORY:DIRECTORY[:OPTIONS]]':
  Specify container read-write bind mounts, see systemd-nspawn(1) --bind option.

--bind-ro='DIRECTORY:DIRECTORY[:OPTIONS][;DIRECTORY:DIRECTORY[:OPTIONS]]':
  Specify container read-only bind mounts, see systemd-nspawn(1) --bind-ro
  option.

--cnt-overlay='DIRECTORY_LOWER:DIRECTORY_UPPER:DIRECTORY_WORK:DIRECTORY_MERGED[;DIRECTORY_UPPER:DIRECTORY_LOWER:DIRECTORY_WORK:DIRECTORY_MERGED]':
  Specify container overlay mounts, see Documentation/filesystems/overlayfs.txt.

--cnt.overlay-options='OPTION1,OPTION2[;OPTION3,OPTION4]':
  Specify container overlay mount options, see
  Documentation/filesystems/overlayfs.txt.

--cnt.start='OPTION1[,OPTION2,...]':
  Specify container start options, see container-start(1).

Examples
========

Build example.net container using debootstrap script:

  sudo container build -n example.net -s debootstrap

Build example.net container using debconf script:

  sudo container build -n example.net -s debconf

Build example.net container with the default build script and start it:

  sudo container build,start -n example.net

See also
========

| compute-tools(7),
| container(1).

Homepage
========

More information about compute-tools and the Open Infrastructure project can be
found on the homepage (https://open-infrastructure.net).

Contact
=======

Bug reports, feature requests, help, patches, support and everything else are
welcome on the Open Infrastructure Software Mailing List
<software@lists.open-infrastructure.net>.

Debian specific bugs can also be reported in the Debian Bug Tracking System
(https://bugs.debian.org).

Authors
=======

compute-tools were written by Daniel Baumann
<daniel.baumann@open-infrastructure.net> and others.