From 54ab5919e2883f0512f616339baa2ca09f45b7ee Mon Sep 17 00:00:00 2001 From: Bel LaPointe Date: Sun, 28 Feb 2021 13:26:42 -0600 Subject: [PATCH] hopefully better --- Dockerfile | 10 ++-------- entrypoint.sh | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 8 deletions(-) create mode 100755 entrypoint.sh diff --git a/Dockerfile b/Dockerfile index 3c7332e..cb14c46 100755 --- a/Dockerfile +++ b/Dockerfile @@ -41,6 +41,7 @@ ENV CREATE_ADMIN=0 COPY --from=builder /pause/pauser /pauser COPY backup.sh / COPY restore.sh / +COPY entrypoint.sh / USER root ### CRON BACKUPS @@ -50,11 +51,4 @@ RUN true \ && chmod 0644 /etc/cron.d/backups \ && touch /var/log/cronj.log -ENTRYPOINT \ - service postgresql start \ - && until psql $DATABASE_URL < /dev/null; do sleep 5; done \ - && bash /restore.sh \ - && miniflux -migrate \ - && miniflux -create-admin \ - && (while true; do miniflux; sleep 1; done) \ - & exec /pauser +ENTRYPOINT bash /entrypoint.sh diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100755 index 0000000..b2a9056 --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,38 @@ +#! /bin/bash + +LOG=/tmp/bel.log + +main() { + echo "" > $LOG + + ensure start_postgres + until psql $DATABASE_URL < /dev/null; do sleep 5; done + + bash /restore.sh + + miniflux -migrate + miniflux -create-admin + ensure miniflux + + exec /pauser +} + +start_postgres() { + service postgresql start + psql $DATABASE_URL +} + +ensure() { + _ensure "$@" &>> $LOG & disown +} + +_ensure() { + while true; do + echo $(date): ensuring "$@" >&2 + "$@" + sleep 3 + done +} + +main "$@" +