Provided by: open-infrastructure-compute-tools_20221223-3_all bug

NAME

       container-build-debconf - Build an advanced Debian based container with debconf

SYNOPSIS

       container build -s debconf ['OPTIONS']
       cnt b -s debconf ['OPTIONS']

       container build -s debian ['OPTIONS']
       cnt b -s debian ['OPTIONS']

       container build -s progress-linux ['OPTIONS']
       cnt b -s progress-linux ['OPTIONS']

DESCRIPTION

       The  debconf  container build script uses debconf(1) to automatically build a Debian based
       container.

   Scope
       Note that this container build script can do a few things  more  than  just  automatically
       debootstrap  based on a preseed file. It also allows you to set a root password, configure
       the network, install certain packages and execute hooks.

       But: this is not a replacement  for  a  configuration  management  system  (like  ansible,
       puppet,  etc.).  The  intenion  of  this  script is to build the initial container to that
       extend that a configuration management system can take over.

       As an analogy, think of debian-installer: d-i sets up your system to make it ready to boot
       and  connect  to  the  network. Everything after that is out of scope.  Same goes for this
       script.

   Functions
       This script performs the following configuration on top of a Debian based system:

          • network

          • root password

          • apt repositories

          • ...

   Modes
       This  container  build  script  can  be  used  under  two  different  names:  debian   and
       progress-linux.

       Alternative, calling it under the debconf name is equal to the debian mode.

   Preseeding
       Hierarchy of Preseed Files:

          • The debconf script can be fully preseeded. Such preseed files can include one or more
            preseed files themselfs (currently, only one  layer  of  includes  is  supported,  no
            nested or recursive includes).

          • The  general  rule  of  'the later preseed file overwrites the earlier' applies.  The
            debconf script reads the main preseed file (specified either on command  line  or  by
            debconf selection/input dialog) after any included preseed files in there.

          • That  means  that debconf values after the include statement in the main preseed file
            can overwrite any values specified in the included preseed files.

OPTIONS

       The following script options are available:

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

       -p, --preseed-file='FILE':
              Specify the preseed file.

EXAMPLES

       Build a Debian based container:
          sudo container build -s debian -n debian.example.net

       Build a Progress Linux container:
          sudo container build -s progress-linux -n progress.example.net

FILES

       The following files are used:

       /etc/compute-tools/config:
              Container configuration files.

       /usr/share/compute-tools/build-scripts:
              Container build scripts.

       /usr/share/doc/compute-tools:
              Container documentation.

       /var/lib/machines:
              Container directory.

       /var/cache/container:
              Container cache directory.

       /tmp/compute-tools:
              Container temporary directory.

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.