You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Max Wittig 69e8b53d49 feat(postgres-backup): add prometheus metrics exporter 6 years ago
..
Dockerfile feat(postgres-backup): add prometheus metrics exporter 6 years ago
README.md feat(postgres-backup): add prometheus metrics exporter 6 years ago
backup.sh feat(postgres-backup): add prometheus metrics exporter 6 years ago
install.sh Bumped alpine version to edge to get pg_dump version 9.6.1 9 years ago
run.sh Fix bash typo 9 years ago
write_metrics.sh feat(postgres-backup): add prometheus metrics exporter 6 years ago

README.md

postgres-backup-s3

Backup PostgresSQL to S3 (supports periodic backups)

Usage

Docker:

$ docker run -e S3_ACCESS_KEY_ID=key -e S3_SECRET_ACCESS_KEY=secret -e S3_BUCKET=my-bucket -e S3_PREFIX=backup -e POSTGRES_DATABASE=dbname -e POSTGRES_USER=user -e POSTGRES_PASSWORD=password -e POSTGRES_HOST=localhost schickling/postgres-backup-s3

Docker Compose:

postgres:
  image: postgres
  environment:
    POSTGRES_USER: user
    POSTGRES_PASSWORD: password

pgbackups3:
  image: schickling/postgres-backup-s3
  links:
    - postgres
  environment:
    SCHEDULE: '@daily'
    S3_REGION: region
    S3_ACCESS_KEY_ID: key
    S3_SECRET_ACCESS_KEY: secret
    S3_BUCKET: my-bucket
    S3_PREFIX: backup
    POSTGRES_DATABASE: dbname
    POSTGRES_USER: user
    POSTGRES_PASSWORD: password
    POSTGRES_EXTRA_OPTS: '--schema=public --blobs'
    ENABLE_METRICS: true

Automatic Periodic Backups

You can additionally set the SCHEDULE environment variable like -e SCHEDULE="@daily" to run the backup automatically.

More information about the scheduling can be found here.

Metrics exporter

Optionally you can also export backup metrics, e.g. size, start time in Prometheus file format. To read the metrics, you'll have to mount the metrics folder to your host at /metrics. The file is called metrics.txt.

$ docker run -v $(pwd)/metrics:/metrics -e ENABLE_METRICS=true -e ... schickling/postgres-backup-s3