summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
Diffstat (limited to 'share')
-rw-r--r--share/config/container.conf.in4
-rw-r--r--share/doc/examples/cairon-backports.cfg1
-rw-r--r--share/man/container-create.1.txt3
-rw-r--r--share/man/container-enter.1.txt5
-rw-r--r--share/man/container-remove.1.txt3
-rw-r--r--share/man/container-start.1.txt3
-rw-r--r--share/man/container-status.1.txt2
-rw-r--r--share/man/container-tools.7.txt14
-rw-r--r--share/man/container.1.txt3
-rwxr-xr-xshare/scripts/debconf43
-rwxr-xr-xshare/scripts/debconf.d/0003-debconf7
11 files changed, 70 insertions, 18 deletions
diff --git a/share/config/container.conf.in b/share/config/container.conf.in
index dd52adb..b5678c0 100644
--- a/share/config/container.conf.in
+++ b/share/config/container.conf.in
@@ -3,14 +3,16 @@
[start]
cnt.auto=@CNT_AUTO@
cnt.network-bridge=@CNT_NETWORK_BRIDGE@
+cnt.overlay=@CNT_OVERLAY@
bind=@BIND@
boot=@BOOT@
capability=@CAPABILITY@
directory=@DIRECTORY@
drop-capability=@DROP_CAPABILITY@
+link-journal=@LINK_JOURNAL@
machine=@MACHINE@
network-veth-extra=@NETWORK_VETH_EXTRA@
-link-journal=@LINK_JOURNAL@
+private-users=@PRIVATE_USERS@
register=@REGISTER@
[limit]
diff --git a/share/doc/examples/cairon-backports.cfg b/share/doc/examples/cairon-backports.cfg
index eed9fd6..8243bbc 100644
--- a/share/doc/examples/cairon-backports.cfg
+++ b/share/doc/examples/cairon-backports.cfg
@@ -64,4 +64,5 @@ container-tools cnt-debconf/nameserver/options string timeout:1 attempts:1
#container-tools cnt-debconf/container-command string
#container-tools cnt-debconf/host-command string
container-tools cnt-debconf/auto string FQDN
+#container-tools cnt-debconf/overlay string
#container-tools cnt-debconf/bind string
diff --git a/share/man/container-create.1.txt b/share/man/container-create.1.txt
index b7a4f01..4fe592f 100644
--- a/share/man/container-create.1.txt
+++ b/share/man/container-create.1.txt
@@ -56,6 +56,9 @@ The following container-create options are available:
*-b, --bind='DIRECTORY:DIRECTORY[:OPTIONS][;DIRECTORY:DIRECTORY[:OPTIONS]]'*::
Specify container bind mounts, see systemd-nspawn(1) --bind 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.
+
SCRIPTS
-------
diff --git a/share/man/container-enter.1.txt b/share/man/container-enter.1.txt
index 792cac7..61c0f66 100644
--- a/share/man/container-enter.1.txt
+++ b/share/man/container-enter.1.txt
@@ -29,7 +29,7 @@ container-enter - Enter a container namespace
SYNOPSIS
--------
-*container enter* ['OPTIONS'] [-- COMMAND|"COMMANDS"]
+*container enter* ['OPTIONS']
DESCRIPTION
@@ -50,9 +50,6 @@ EXAMPLES
*Enter to example.net container namespace:*::
sudo container enter -n example.net
-*Execute 'ip a' in example.net container namespace:*::
- sudo container enter -n example.net -- 'ip a'
-
SEE ALSO
--------
diff --git a/share/man/container-remove.1.txt b/share/man/container-remove.1.txt
index cb9b77f..cad779f 100644
--- a/share/man/container-remove.1.txt
+++ b/share/man/container-remove.1.txt
@@ -47,6 +47,9 @@ The following container options are available:
*-f, --force*::
Do not prompt before removal.
+*-v, --verbose*::
+ Explain what is being done.
+
EXAMPLES
--------
diff --git a/share/man/container-start.1.txt b/share/man/container-start.1.txt
index 313587d..bf1d8de 100644
--- a/share/man/container-start.1.txt
+++ b/share/man/container-start.1.txt
@@ -44,6 +44,9 @@ The following container options are available:
*-n, --name='NAME'*::
Specify container name.
+*-f, --force'*::
+ Removing stray lock file if existing.
+
EXAMPLES
--------
diff --git a/share/man/container-status.1.txt b/share/man/container-status.1.txt
index e5c700b..f1688dc 100644
--- a/share/man/container-status.1.txt
+++ b/share/man/container-status.1.txt
@@ -24,7 +24,7 @@ CONTAINER-STATUS(1)
NAME
----
-container-status - Get the status of a container
+container-status - Show container status
SYNOPSIS
diff --git a/share/man/container-tools.7.txt b/share/man/container-tools.7.txt
index 7fd1a0f..604683f 100644
--- a/share/man/container-tools.7.txt
+++ b/share/man/container-tools.7.txt
@@ -87,30 +87,20 @@ USAGE
*Start a container:*::
sudo container start -n NAME
-*Restart a container:*::
- sudo container restart -n NAME
-
*Stop a container:*::
sudo container stop -n NAME
*Remove a container:*::
sudo container remove -n NAME
-*Attach console to a container:*::
- sudo container console -n NAME
-
-*Enter a container namespace:*::
- sudo container enter -n NAME
-
-*limit*::
- sudo container limit -n NAME --cpu-quota 10%
-
*List container on the system:*::
sudo container list
*Show container-tools version:*::
container version
+See container(1) for a list of all container commands.
+
LINKS
-----
diff --git a/share/man/container.1.txt b/share/man/container.1.txt
index d660379..32bd393 100644
--- a/share/man/container.1.txt
+++ b/share/man/container.1.txt
@@ -76,6 +76,9 @@ The following container commands are available:
*list*::
List container on the system, see container-list(1).
+*status*::
+ Show container status, see container-status(1).
+
*version*::
Show container-tools version, see container-version(1).
diff --git a/share/scripts/debconf b/share/scripts/debconf
index aa1c798..4c89e6f 100755
--- a/share/scripts/debconf
+++ b/share/scripts/debconf
@@ -909,6 +909,7 @@ Commands ()
sed -i -e "s|^cnt.auto=.*|cnt.auto=${CNT_AUTO}|" "${CONFIG}/${NAME}.conf"
sed -i -e "s|^cnt.network-bridge=.*|cnt.network-bridge=${HOST_INTERFACE_NAME}:${NETWORK0_BRIDGE:-br0}|g" "${CONFIG}/${NAME}.conf"
+ sed -i -e "s|^cnt.overlay=.*|cnt.overlay=${CNT_OVERLAY}|g" "${CONFIG}/${NAME}.conf"
sed -i -e "s|^bind=.*|bind=${BIND}|" "${CONFIG}/${NAME}.conf"
sed -i -e "s|^network-veth-extra=.*|network-veth-extra=${HOST_INTERFACE_NAME}:eth0|g" "${CONFIG}/${NAME}.conf"
@@ -1010,12 +1011,54 @@ then
done
fi
+# Mounting overlay mounts
+if [ -n "${CNT_OVERLAY}" ]
+then
+ CNT_OVERLAYS="$(echo ${CNT_OVERLAY} | sed -e 's|;| |g')"
+
+ for CNT_OVERLAY in ${CNT_OVERLAYS}
+ do
+ DIRECTORY_LOWER="$(echo ${CNT_OVERLAY} | awk -F: '{ print $1 }')"
+ DIRECTORY_UPPER="$(echo ${CNT_OVERLAY} | awk -F: '{ print $2 }')"
+ DIRECTORY_WORK="$(echo ${CNT_OVERLAY} | awk -F: '{ print $3 }')"
+ DIRECTORY_MERGED="$(echo ${CNT_OVERLAY} | awk -F: '{ print $4 }')"
+
+ for DIRECTORY in "${DIRECTORY_LOWER}" "${DIRECTORY_UPPER}" "${DIRECTORY_WORK}" "${DIRECTORY_MERGED}"
+ do
+ mkdir -p "${DIRECTORY}"
+ done
+
+ mount -t overlay overlay-${NAME} -olowerdir="${DIRECTORY_LOWER}",upperdir="${DIRECTORY_UPPER}",workdir="${DIRECTORY_WORK}" "${DIRECTORY_MERGED}"
+ done
+fi
+
Configure_system "${MACHINES}/${NAME}"
Configure_network "${MACHINES}/${NAME}"
Cleanup_system "${MACHINES}/${NAME}"
Commands "${MACHINES}/${NAME}"
+# Unmounting overlay mounts
+if [ -n "${CNT_OVERLAY}" ]
+then
+ CNT_OVERLAYS="$(echo ${CNT_OVERLAY} | sed -e 's|;| |g')"
+
+ for CNT_OVERLAY in ${CNT_OVERLAYS}
+ do
+ DIRECTORY_LOWER="$(echo ${CNT_OVERLAY} | awk -F: '{ print $1 }')"
+ DIRECTORY_UPPER="$(echo ${CNT_OVERLAY} | awk -F: '{ print $2 }')"
+ DIRECTORY_WORK="$(echo ${CNT_OVERLAY} | awk -F: '{ print $3 }')"
+ DIRECTORY_MERGED="$(echo ${CNT_OVERLAY} | awk -F: '{ print $4 }')"
+
+ umount -f "${DIRECTORY_MERGED}"
+
+ for DIRECTORY in "${DIRECTORY_LOWER}" "${DIRECTORY_UPPER}" "${DIRECTORY_WORK}" "${DIRECTORY_MERGED}"
+ do
+ rmdir --ignore-fail-on-non-empty --parents ${DIRECTORY} > /dev/null 2>&1 || true
+ done
+ done
+fi
+
# Unmounting bind mounts
if [ -n "${BIND}" ]
then
diff --git a/share/scripts/debconf.d/0003-debconf b/share/scripts/debconf.d/0003-debconf
index 15a6a15..548fb07 100755
--- a/share/scripts/debconf.d/0003-debconf
+++ b/share/scripts/debconf.d/0003-debconf
@@ -1063,6 +1063,13 @@ Internal_options ()
fi
echo "BIND=\"${BIND}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
+
+ if db_get cnt-debconf/overlay
+ then
+ CNT_OVERLAY="${RET}" # string (w/ empty)
+ fi
+
+ echo "CNT_OVERLAY=\"${CNT_OVERLAY}\"" >> "${DEBCONF_TMPDIR}/debconf.default"
}
Distribution