Sign inSign up

stvndall/docker-pg_dump

By stvndall

Updated almost 8 years ago

pg dump image based off of annixa/docker-pg_dump

Image
0

892

stvndall/docker-pg_dump repository overview

annixa/pg_dump

Docker image with pg_dump running as a cron task. Find the image, here: https://hub.docker.com/r/annixa/docker-pg_dump/

Usage

Attach a target postgres container to this container and mount a volume to container's /dump folder. Backups will appear in this volume. Optionally set up cron job schedule (default is 0 1 * * * - runs every day at 1:00 am).

Environment Variables:

VariableRequired?DefaultDescription
PGUSERRequiredpostgresThe user for accessing the database
PGPASSWORDOptionalNoneThe password for accessing the database
PGDBOptionalpostgresThe name of the database
PGHOSTOptionaldbThe hostname of the database
PGPORTOptional5432The port for the database
CRON_SCHEDULERequired0 1 * * *The cron schedule at which to run the pg_dump
DELETE_OLDER_THANOptionalNoneOptionally, delete files older than DELETE_OLDER_THAN minutes. Do not include + or -.

Example:

postgres-backup:
  image: annixa/docker-pg_dump
  container_name: postgres-backup
  links:
    - postgres:db #Maps postgres as "db"
  environment:
    - PGUSER=postgres
    - PGPASSWORD=SumPassw0rdHere
    - CRON_SCHEDULE=* * * * * #Every minute
    - DELETE_OLDER_THAN=1 #Optionally delete files older than $DELETE_OLDER_THAN minutes.
  #  - PGDB=postgres # The name of the database to dump
  #  - PGHOST=db # The hostname of the PostgreSQL database to dump
  volumes:
    - /dump
  command: dump-cron

Run backup once without cron job, use "mybackup" as backup file prefix, shell will ask for password:

docker run -ti --rm \
    -v /path/to/target/folder:/dump \   # where to put db dumps
    -e PREFIX=mybackup \
    --link my-postgres-container:db \   # linked container with running mongo
    annixa/docker-pg_dump dump

Tag summary

Content type

Image

Digest

Size

111 MB

Last updated

almost 8 years ago

docker pull stvndall/docker-pg_dump