From cdc5e9ec6ad1dab029e96eb96896403ffddf5de6 Mon Sep 17 00:00:00 2001 From: YISH Date: Tue, 13 Aug 2024 21:32:08 +0800 Subject: [PATCH] Automatic detection using podman --- run_docker | 42 ++++++++++++++++++++++++++---------------- 1 file changed, 26 insertions(+), 16 deletions(-) diff --git a/run_docker b/run_docker index 300133537..c37f50547 100755 --- a/run_docker +++ b/run_docker @@ -19,6 +19,14 @@ HEALTHCHECK_MESSAGE="Done initialization" set -eo pipefail +# If docker does not exist, podman is used instead. +if ! command -v docker &> /dev/null; then + USER_FLAG=() + docker() { + podman $@ + } +fi + function usage() { cat > /dev/stdout <.docker_home/entrypoint.sh +groupadd --gid '$USER_GID' '$USER_NAME'; +useradd\ + --home '$USER_HOME'\ + --uid '$USER_ID'\ + --gid '$USER_GID'\ + --comment '$USER_COMMENT_FIELD'\ + --shell '$USER_INTERPRETER'\ + --groups sudo\ + $USER_NAME\ +; +echo 'export PATH=\$PATH:$USER_HOME/.local/bin' >> /etc/profile; +echo '%sudo ALL=(ALL:ALL) NOPASSWD:ALL' >> /etc/sudoers ; +echo '$HEALTHCHECK_MESSAGE'; +tail -f /dev/null +EOF + CONTAINER=$(\ docker run \ "${PORT_CONFIGURATION_LINE[@]}" \ @@ -115,22 +140,7 @@ CONTAINER=$(\ --user root \ --shm-size 2g \ "${PYODIDE_DOCKER_IMAGE}" \ - /bin/bash -c " \ - groupadd --gid '$USER_GID' '$USER_NAME'; \ - useradd \ - --home '$USER_HOME' \ - --uid '$USER_ID' \ - --gid '$USER_GID' \ - --comment '$USER_COMMENT_FIELD' \ - --shell '$USER_INTERPRETER' \ - --groups sudo \ - $USER_NAME \ - ; \ - echo 'export PATH=\$PATH:$USER_HOME/.local/bin' >> /etc/profile; \ - echo '%sudo ALL=(ALL:ALL) NOPASSWD:ALL' >> /etc/sudoers ; \ - echo '$HEALTHCHECK_MESSAGE'; \ - tail -f /dev/null \ - " \ + /bin/bash .docker_home/entrypoint.sh \ ) until docker logs "$CONTAINER" 2>&1 | grep -q "$HEALTHCHECK_MESSAGE"; do