From 176ce54bd91aaab2c058219ba6bd7d556d0c955d Mon Sep 17 00:00:00 2001 From: Quentin Duchemin <quentinduchemin@tuta.io> Date: Thu, 28 May 2020 18:14:57 +0200 Subject: [PATCH] [Etherpad] Automatic PG database creation and healthcheck in entrypoint --- pica-etherpad/Dockerfile | 2 +- pica-etherpad/entrypoint.sh | 2 +- pica-etherpad/secrets/etherpad-week-db.secrets.example | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pica-etherpad/Dockerfile b/pica-etherpad/Dockerfile index 8f3a84b0..6d5a1b53 100644 --- a/pica-etherpad/Dockerfile +++ b/pica-etherpad/Dockerfile @@ -60,7 +60,7 @@ RUN useradd --uid ${UID} --create-home etherpad COPY --from=downloader --chown=etherpad /opt/etherpad-lite /opt/etherpad-lite/ RUN apt-get update && \ - apt-get install -y curl default-mysql-client && \ + apt-get install -y curl default-mysql-client postgresql-client && \ chmod +x /opt/etherpad-lite/entrypoint.sh && \ usermod -d /opt/etherpad-lite etherpad && \ chown -R etherpad /opt/etherpad-lite && \ diff --git a/pica-etherpad/entrypoint.sh b/pica-etherpad/entrypoint.sh index 22b00ad0..d1fda49a 100644 --- a/pica-etherpad/entrypoint.sh +++ b/pica-etherpad/entrypoint.sh @@ -22,7 +22,7 @@ if [ -z "${DB_HOST}" ]; then exit 1 fi -while ! mysqladmin ping -u${DB_USER} -p${DB_PASSWORD} -h"${DB_HOST}" &>/dev/null; do +while ! { mysqladmin ping -u${DB_USER} -p${DB_PASSWORD} -h"${DB_HOST}" &>/dev/null || PGPASSWORD=${DB_PASSWORD} psql -h${DB_HOST} -U${DB_USER} -c "SELECT 1" }; do echo "Database server not ready yet, re-trying in 5 seconds..." sleep 5 done diff --git a/pica-etherpad/secrets/etherpad-week-db.secrets.example b/pica-etherpad/secrets/etherpad-week-db.secrets.example index 96af56a5..4d5e0fab 100644 --- a/pica-etherpad/secrets/etherpad-week-db.secrets.example +++ b/pica-etherpad/secrets/etherpad-week-db.secrets.example @@ -1 +1,3 @@ POSTGRES_PASSWORD=password +POSTGRES_USER=etherpad +POSTGRES_DB=etherpad-lite -- GitLab