From 0113cdad85da5a5c7313247838a35459c504e69f Mon Sep 17 00:00:00 2001 From: Benedikt Ziemons Date: Wed, 15 Sep 2021 16:48:52 +0200 Subject: [PATCH] podman: Fix and tweak run script --- podman-run.sh | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/podman-run.sh b/podman-run.sh index 1ab7b59..da73580 100755 --- a/podman-run.sh +++ b/podman-run.sh @@ -5,7 +5,11 @@ IFS=$'\n\t' DIR="${0%/*}" -podman run -d --name=nextcloud --replace=true -p 8080:80 -v "$DIR:/var/www/html/custom_apps/upschooling" docker.io/nextcloud +# replace containers +podman rm -if synapse +podman rm -if nextcloud + +podman run -d --name=nextcloud -p 8080:80 -v "$DIR:/var/www/html/custom_apps/upschooling" docker.io/nextcloud podman exec nextcloud chown -R 33 /var/www/html/custom_apps "$DIR/podman-reown.sh" podman exec --user 33 nextcloud bash -c 'cd /var/www/html/custom_apps/upschooling && make composer' @@ -18,7 +22,6 @@ if podman volume exists synapse-data; then else podman run -d --rm \ --name=synapse \ - --replace=true \ --hostname synapse \ "--mount=type=volume,src=synapse-data,dst=/data" \ -e SYNAPSE_SERVER_NAME=synapse \ @@ -30,23 +33,39 @@ fi podman run -d \ --name=synapse \ - --replace=true \ "--mount=type=volume,src=synapse-data,dst=/data" \ "--network=container:$(podman inspect --format "{{.Id}}" nextcloud)" \ --hostname synapse \ docker.io/matrixdotorg/synapse +# wait for synapse to start +MAX_TRIES=15 +for ((i = 0 ; i < $MAX_TRIES ; i++)); do + if podman logs synapse 2>&1 | grep -q "Synapse now listening on TCP port 8008"; then + echo -e "Synapse has started. \e[1;38;5;2mOK\033[0m" + break + fi + sleep 1 +done + +if [[ $i -ge $MAX_TRIES ]]; then + echo "Synapse did not start in time! Use \`podman logs synapse\` to investigate" + exit 1 +fi + +set +e REGISTER_USER_OUTPUT="$(podman exec synapse register_new_matrix_user -u upschooling -p secret -a -c /data/homeserver.yaml http://localhost:8008)" REGISTER_USER_SUCCESS=$? +set -e if [[ "$REGISTER_USER_SUCCESS" != "0" ]]; then if echo $REGISTER_USER_OUTPUT | grep -q "User ID already taken."; then - echo "User @upschooling:synapse already exists. OK" + echo -e "User @upschooling:synapse already exists. \e[1;38;5;2mOK\033[0m" else echo "Could not create user @upschooling:synapse" echo $REGISTER_USER_OUTPUT exit 1 fi else - echo "Matrix user @upschooling:synapse created. OK" + echo -e "Matrix user @upschooling:synapse created. \e[1;38;5;2mOK\033[0m" fi