diff --git a/backup/Dockerfile b/backup/Dockerfile index 5839205..d275a30 100644 --- a/backup/Dockerfile +++ b/backup/Dockerfile @@ -4,10 +4,12 @@ RUN apk add postgresql-client RUN apk add dcron COPY pgsqlbackup.sh /usr/local/bin/pgsqlbackup.sh +COPY drop_old_dumps.sh /usr/local/bin/drop_old_dumps.sh ENV DB_NAME="b2share" ENV DB_HOST="postgres" ENV DB_PORT="5432" +ENV NUMBER_OF_DUMPS="30" # Create cron job COPY crontab /etc/cron.d/pgsqlbackup-cron diff --git a/backup/crontab b/backup/crontab index 5429279..2e173b7 100644 --- a/backup/crontab +++ b/backup/crontab @@ -1 +1,2 @@ 0 1 * * * /bin/sh /usr/local/bin/pgsqlbackup.sh 2>&1 +0 2 * * * /bin/sh /usr/local/bin/drop_old_dumps.sh 2>&1 diff --git a/backup/drop_old_dumps.sh b/backup/drop_old_dumps.sh new file mode 100644 index 0000000..edda268 --- /dev/null +++ b/backup/drop_old_dumps.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# +# Drop old database dumps. + +/usr/bin/find /usr/local/share/pgsql_dumps -type f -mtime +${NUMBER_OF_DUMPS} -delete + diff --git a/docker-compose.yml b/docker-compose.yml index 6ae73ae..e18e3f3 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -112,6 +112,7 @@ services: # environment: # - "PGPASSWORD=${B2SHARE_POSTGRESQL_PASSWORD}" # - "POSTGRES_USER=${B2SHARE_POSTGRESQL_USER}" + # - "NUMBER_OF_DUMPS=30" # volumes: # - "${B2SHARE_DATADIR}/db_dump:/usr/local/share/pgsql_dumps"