From 75578aad61c1e9fae021223ece70cb83e3e2bcf2 Mon Sep 17 00:00:00 2001 From: Valentin Rothberg Date: Sat, 22 Dec 2018 14:59:43 +0100 Subject: add container-init support Add support for executing an init binary as PID 1 in a container to forward signals and reap processes. When the `--init` flag is set for podman-create or podman-run, the init binary is bind-mounted to `/dev/init` in the container and "/dev/init --" is prepended to the container's command. The default base path of the container-init binary is `/usr/libexec/podman` while the default binary is catatonit [1]. This default can be changed permanently via the `init_path` field in the `libpod.conf` configuration file (which is recommended for packaging) or temporarily via the `--init-path` flag of podman-create and podman-run. [1] https://github.com/openSUSE/catatonit Fixes: #1670 Signed-off-by: Valentin Rothberg --- hack/install_catatonit.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100755 hack/install_catatonit.sh (limited to 'hack/install_catatonit.sh') diff --git a/hack/install_catatonit.sh b/hack/install_catatonit.sh new file mode 100755 index 000000000..e5532a200 --- /dev/null +++ b/hack/install_catatonit.sh @@ -0,0 +1,15 @@ +#!/bin/bash -e +BASE_PATH="/usr/libexec/podman" +CATATONIT_PATH="${BASE_PATH}/catatonit" +CATATONIT_VERSION="v0.1.3" + +if [ -f $CATATONIT_PATH ]; then + echo "skipping ... catatonit is already installed" +else + echo "downloading catatonit to $CATATONIT_PATH" + curl -o catatonit -L https://github.com/openSUSE/catatonit/releases/download/$CATATONIT_VERSION/catatonit.x86_64 + chmod +x catatonit + install ${SELINUXOPT} -d -m 755 $BASE_PATH + install ${SELINUXOPT} -m 755 catatonit $CATATONIT_PATH + rm catatonit +fi -- cgit v1.2.3-54-g00ecf