From da8225b8ffdb4dc7d89e058c3a2a691a061b5895 Mon Sep 17 00:00:00 2001 From: Jonas Kaninda Date: Sun, 11 Aug 2024 09:41:31 +0200 Subject: [PATCH 1/3] Update readme --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index f3448b5..aa1f2f6 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,12 @@ To run a one time backup, bind your local volume to `/backup` in the container a Alternatively, pass a `--env-file` in order to use a full config as described below. +```yaml + docker run --rm --network your_network_name \ + --env-file your-env-file + -v $PWD/backup:/backup/ \ + jkaninda/pg-bkup backup -d database_name +``` ### Simple backup in docker compose file From 46fe319db173fc013c18ae29a4959b39bd33dd1f Mon Sep 17 00:00:00 2001 From: Jonas Kaninda Date: Sun, 11 Aug 2024 09:50:12 +0200 Subject: [PATCH 2/3] Update readme --- README.md | 2 +- docs/index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index aa1f2f6..a0185a0 100644 --- a/README.md +++ b/README.md @@ -52,7 +52,7 @@ Alternatively, pass a `--env-file` in order to use a full config as described be ```yaml docker run --rm --network your_network_name \ - --env-file your-env-file + --env-file your-env-file \ -v $PWD/backup:/backup/ \ jkaninda/pg-bkup backup -d database_name ``` diff --git a/docs/index.md b/docs/index.md index 30a36da..4d0cb94 100644 --- a/docs/index.md +++ b/docs/index.md @@ -47,7 +47,7 @@ Alternatively, pass a `--env-file` in order to use a full config as described be ```yaml docker run --rm --network your_network_name \ - --env-file your-env-file + --env-file your-env-file \ -v $PWD/backup:/backup/ \ jkaninda/pg-bkup backup -d database_name ``` From 040d116ca47dbfd8d890d51231a2269e29b20e70 Mon Sep 17 00:00:00 2001 From: Jonas Kaninda Date: Thu, 15 Aug 2024 06:09:06 +0200 Subject: [PATCH 3/3] docs: add tested platforms --- Makefile | 49 ------------------------------------------------- README.md | 4 +++- 2 files changed, 3 insertions(+), 50 deletions(-) delete mode 100644 Makefile diff --git a/Makefile b/Makefile deleted file mode 100644 index 279044d..0000000 --- a/Makefile +++ /dev/null @@ -1,49 +0,0 @@ -BINARY_NAME=pg-bkup -IMAGE_NAME=jkaninda/pg-bkup -include .env -export -run: - go run . - -build: - go build -o bin/${BINARY_NAME} . - -compile: - GOOS=darwin GOARCH=arm64 go build -o bin/${BINARY_NAME}-darwin-arm64 . - GOOS=darwin GOARCH=amd64 go build -o bin/${BINARY_NAME}-darwin-amd64 . - GOOS=linux GOARCH=arm64 go build -o bin/${BINARY_NAME}-linux-arm64 . - GOOS=linux GOARCH=amd64 go build -o bin/${BINARY_NAME}-linux-amd64 . - -docker-build: - docker build -f docker/Dockerfile -t ${IMAGE_NAME}:latest . - -docker-run: docker-build - docker run --rm --network web --name pg-bkup -v "./backup:/backup" -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} backup --prune --keep-last 2 -docker-restore: docker-build - docker run --rm --network web --user 1000:1000 --name pg-bkup -v "./backup:/backup" -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} restore -f ${FILE_NAME} - - -docker-run-scheduled: docker-build - docker run --rm --network web --name pg-bkup -v "./backup:/backup" -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} backup --mode scheduled --period "* * * * *" - - -docker-run-scheduled-s3: docker-build - docker run --rm --network web --name pg-bkup -v "./backup:/backup" -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "ACCESS_KEY=${ACCESS_KEY}" -e "SECRET_KEY=${SECRET_KEY}" -e "BUCKET_NAME=${BUCKET_NAME}" -e "S3_ENDPOINT=${AWS_S3_ENDPOINT}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} backup --storage s3 --mode scheduled --path /custom-path --period "* * * * *" - -docker-run-s3: docker-build - docker run --rm --network web --name pg-bkup -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "ACCESS_KEY=${ACCESS_KEY}" -e "SECRET_KEY=${SECRET_KEY}" -e "AWS_S3_BUCKET_NAME=${AWS_S3_BUCKET_NAME}" -e "S3_ENDPOINT=${AWS_S3_ENDPOINT}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} backup --storage s3 --mode scheduled --path custom-path --period "* * * * *" - - -docker-restore-s3: docker-build - docker run --rm --network web --privileged --device /dev/fuse --name pg-bkup -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "ACCESS_KEY=${ACCESS_KEY}" -e "SECRET_KEY=${SECRET_KEY}" -e "BUCKET_NAME=${AWS_S3_BUCKET_NAME}" -e "S3_ENDPOINT=${S3_ENDPOINT}" -e "AWS_REGION=eu2" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} restore --storage s3 -f ${FILE_NAME} #--path /custom-path - -docker-run-ssh: docker-build - docker run --rm --network web --name pg-bkup -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "SSH_USER=${SSH_USER}" -e "SSH_HOST_NAME=${SSH_HOST_NAME}" -e "SSH_REMOTE_PATH=${SSH_REMOTE_PATH}" -e "SSH_PASSWORD=${SSH_PASSWORD}" -e "SSH_PORT=${SSH_PORT}" -e "SSH_IDENTIFY_FILE=${SSH_IDENTIFY_FILE}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} backup --storage ssh - -docker-run-scheduled-ssh: docker-build - docker run --rm --network web --name pg-bkup -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "SSH_USER=${SSH_USER}" -e "SSH_HOST_NAME=${SSH_HOST_NAME}" -e "SSH_REMOTE_PATH=${SSH_REMOTE_PATH}" -e "SSH_PASSWORD=${SSH_PASSWORD}" -e "SSH_PORT=${SSH_PORT}" -e "SSH_IDENTIFY_FILE=${SSH_IDENTIFY_FILE}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" ${IMAGE_NAME} backup --storage ssh --mode scheduled --period "* * * * *" -docker-restore-ssh: docker-build - docker run --rm --network web --name pg-bkup -e "DB_HOST=${DB_HOST}" -e "DB_NAME=${DB_NAME}" -e "DB_USERNAME=${DB_USERNAME}" -e "DB_PASSWORD=${DB_PASSWORD}" -e "SSH_USER=${SSH_USER}" -e "SSH_HOST_NAME=${SSH_HOST_NAME}" -e "SSH_REMOTE_PATH=${SSH_REMOTE_PATH}" -e "SSH_PASSWORD=${SSH_PASSWORD}" -e "SSH_PORT=${SSH_PORT}" -e "GPG_PASSPHRASE=${GPG_PASSPHRASE}" -e "SSH_IDENTIFY_FILE=${SSH_IDENTIFY_FILE}" ${IMAGE_NAME} restore --storage ssh -f ${FILE_NAME} - -run-docs: - cd docs && bundle exec jekyll serve -H 0.0.0.0 -t \ No newline at end of file diff --git a/README.md b/README.md index e2c9890..c65ede9 100644 --- a/README.md +++ b/README.md @@ -12,9 +12,11 @@ It also supports __encrypting__ your backups using GPG. ![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/jkaninda/pg-bkup?style=flat-square) ![Docker Pulls](https://img.shields.io/docker/pulls/jkaninda/pg-bkup?style=flat-square) +Successfully tested on: - Docker -- Docker Swarm +- Docker in Swarm mode - Kubernetes +- Openshift ## Documentation is found at