From 2ef2c47bae3260bfb12a09fa42fee413ce843a2e Mon Sep 17 00:00:00 2001 From: deployn Date: Thu, 24 Apr 2025 23:21:04 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20backup-db=20container=20hinzuf=C3=BCgen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index a12699a..260a8bf 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -26,7 +26,9 @@ services: - /etc/localtime:/etc/localtime:ro depends_on: - db + db: + container_name: gitea-db image: postgres:17 restart: unless-stopped environment: @@ -37,3 +39,38 @@ services: - gitea volumes: - ./postgres:/var/lib/postgresql/data + healthcheck: + test: ["CMD", "pg_isready", "-U", "gitea", "-d", "gitea"] + interval: 10s + timeout: 5s + retries: 5 + + postgres-backup: + container_name: gitea-db-backup + networks: + - gitea + image: postgres:17 + environment: + PGHOST: db + PGDATABASE: gitea + PGUSER: gitea + PGPASSWORD: giteaasdf + BACKUP_NUM_KEEP: 7 + BACKUP_FREQUENCY: 1d + entrypoint: | + bash -c 'bash -s < /dump/pg_backup_\`date +%d-%m-%Y"_"%H_%M_%S\`.dump + (ls -t /dump/pg_backup_*.dump|head -n $$BACKUP_NUM_KEEP;ls /dump/pg_backup_*.dump)|sort|uniq -u|xargs rm -f -- 2>/dev/null || true + sleep $$BACKUP_FREQUENCY + done + EOF' + depends_on: + postgres: + condition: service_healthy + restart: unless-stopped + volumes: + - /etc/localtime:/etc/localtime:ro + - ./backup-db:/dump