diff --git a/Dockerfile b/Dockerfile index ad33265..19bba67 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ -FROM alpine:3.15 +FROM alpine:3.19 RUN apk update \ - && apk --no-cache add dumb-init postgresql-client curl aws-cli + && apk --no-cache add dumb-init postgresql16-client curl aws-cli RUN curl -L https://github.com/odise/go-cron/releases/download/v0.0.7/go-cron-linux.gz | zcat > /usr/local/bin/go-cron && chmod +x /usr/local/bin/go-cron @@ -9,4 +9,4 @@ COPY entrypoint.sh . COPY backup.sh . ENTRYPOINT ["/usr/bin/dumb-init", "--"] -CMD ["sh", "entrypoint.sh"] \ No newline at end of file +CMD ["sh", "entrypoint.sh"] diff --git a/backup.sh b/backup.sh index 5f2ab59..d138d13 100644 --- a/backup.sh +++ b/backup.sh @@ -56,7 +56,7 @@ case "${PG_BACKUP_ACTION:-dump}" in # TODO: check if database is fresh echo "Snapshotting $POSTGRES_DB database" pg_dump -Fc $POSTGRES_HOST_OPTS $POSTGRES_DB > dump.backup - aws configure set default.s3.multipart_chunksize 16MB + aws configure set default.s3.multipart_chunksize 64MB if [ "${PRIVATE_BACKUP}" == "true" ] || [ "${PRIVATE_BACKUP}" == "1" ]; then echo "Rotating old snapshot" @@ -66,7 +66,7 @@ case "${PG_BACKUP_ACTION:-dump}" in cat dump.backup | aws $AWS_ARGS s3 cp - s3://$S3_BUCKET/$S3_PATH/$S3_FILENAME.backup --acl private || exit 2 else echo "Rotating old snapshot" - aws $AWS_ARGS s3 cp s3://$S3_BUCKET/$S3_PATH/$S3_FILENAME.backup s3://$S3_BUCKET/$S3_PATH/$S3_FILENAME.old.backup --acl public-read || true + aws $AWS_ARGS s3 cp s3://$S3_BUCKET/$S3_PATH/$S3_FILENAME.backup s3://$S3_BUCKET/$S3_PATH/$S3_FILENAME.old.backup --metadata-directive REPLACE --acl public-read || true echo "Uploading fresh public snapshot to $S3_BUCKET/$S3_PATH/$S3_FILENAME" cat dump.backup | aws $AWS_ARGS s3 cp - s3://$S3_BUCKET/$S3_PATH/$S3_FILENAME.backup --acl public-read || exit 2 @@ -93,3 +93,4 @@ case "${PG_BACKUP_ACTION:-dump}" in pg_restore -v -d $POSTGRES_DB $POSTGRES_HOST_OPTS dump.backup ;; esac + diff --git a/boto.config b/boto.config new file mode 100644 index 0000000..c68baf8 --- /dev/null +++ b/boto.config @@ -0,0 +1,13 @@ +[Credentials] +gs_access_key_id=replace_gs_access_key_id +gs_secret_access_key=replace_gs_secret_access_key + +[Boto] + +[GoogleCompute] + +[GSUtil] +content_language = en +default_api_version = 2 + +[OAuth2] \ No newline at end of file