summaryrefslogtreecommitdiff
path: root/hack/install_catatonit.sh
diff options
context:
space:
mode:
authorValentin Rothberg <rothberg@redhat.com>2018-12-22 14:59:43 +0100
committerValentin Rothberg <rothberg@redhat.com>2019-01-04 11:42:03 +0100
commit75578aad61c1e9fae021223ece70cb83e3e2bcf2 (patch)
tree2be4469136fd0f7c179352d6a721d2e9f0a61f47 /hack/install_catatonit.sh
parent9ffd4806163e410d51d0f0cbece45b7405ff9fee (diff)
downloadpodman-75578aad61c1e9fae021223ece70cb83e3e2bcf2.tar.gz
podman-75578aad61c1e9fae021223ece70cb83e3e2bcf2.tar.bz2
podman-75578aad61c1e9fae021223ece70cb83e3e2bcf2.zip
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 <rothberg@redhat.com>
Diffstat (limited to 'hack/install_catatonit.sh')
-rwxr-xr-xhack/install_catatonit.sh15
1 files changed, 15 insertions, 0 deletions
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