Merge pull request #1657 from nextcloud/enh/noid/fix-healtchecks

fix healthcheck for nextcloud and database
This commit is contained in:
Simon L 2023-01-02 21:50:38 +01:00 committed by GitHub
commit 0ef29ffb0c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 21 additions and 5 deletions

View file

@ -250,7 +250,8 @@ RUN set -ex; \
chmod +x /cron.sh && \
chmod +x /notify.sh && \
chmod +x /notify-all.sh && \
chmod +x /activate-collabora.sh
chmod +x /activate-collabora.sh && \
chmod +x /healthcheck.sh
RUN set -ex; \
mkdir /mnt/ncdata; \
@ -264,4 +265,4 @@ RUN echo "root:$(openssl rand -base64 12)" | chpasswd
USER root
ENTRYPOINT ["/start.sh"]
HEALTHCHECK CMD (sudo -u www-data nc -z "$POSTGRES_HOST" 5432 || exit 0) && (sudo -u www-data nc -z localhost 9000 && sudo -u www-data nc -z localhost 7867) || exit 1
HEALTHCHECK CMD sudo -E -u www-data bash /healthcheck.sh

View file

@ -0,0 +1,7 @@
#!/bin/bash
nc -z "$POSTGRES_HOST" 5432 || exit 0
if ! nc -z localhost 9000 || ! nc -z localhost 7867; then
exit 1
fi

View file

@ -17,9 +17,12 @@ RUN set -ex; \
chown -R postgres:postgres "$PGDATA"
COPY start.sh /usr/bin/
COPY healthcheck.sh /usr/bin/
COPY init-user-db.sh /docker-entrypoint-initdb.d/
RUN chmod +x /usr/bin/start.sh; \
chmod +xr /docker-entrypoint-initdb.d/init-user-db.sh
RUN set -ex; \
chmod +x /usr/bin/start.sh; \
chmod +xr /docker-entrypoint-initdb.d/init-user-db.sh; \
chmod +x /usr/bin/healthcheck.sh
RUN mkdir /mnt/data; \
chown postgres:postgres /mnt/data;
@ -32,4 +35,4 @@ RUN echo "root:$(openssl rand -base64 12)" | chpasswd
USER postgres
ENTRYPOINT ["start.sh"]
HEALTHCHECK CMD (test -f "/mnt/data/backup-is-running" && exit 0) && psql -d "postgresql://$POSTGRES_USER:$POSTGRES_PASSWORD@localhost:5432/$POSTGRES_DB" -c "select now()" || exit 1
HEALTHCHECK CMD healthcheck.sh

View file

@ -0,0 +1,5 @@
#!/bin/bash
test -f "/mnt/data/backup-is-running" && exit 0
psql -d "postgresql://$POSTGRES_USER:$POSTGRES_PASSWORD@localhost:5432/$POSTGRES_DB" -c "select now()" || exit 1