From 82d193a8813d9fd7de35955c5e647e84d2acc65b Mon Sep 17 00:00:00 2001 From: Jan Brinkmann Date: Sun, 16 Jan 2022 18:30:40 +0100 Subject: [PATCH] Request BACKUP_CUSTOM_LABEL when stop containers. --- README.md | 2 ++ src/backup.sh | 13 ++++++++----- .../docker-compose.yml | 2 ++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index a89a220..192f475 100644 --- a/README.md +++ b/README.md @@ -166,10 +166,12 @@ services: labels: # Adding this label means this container should be stopped while it's being backed up: - "docker-volume-backup.stop-during-backup=true" + - "grafana" backup: image: jareware/docker-volume-backup environment: + BACKUP_CUSTOM_LABEL: "grafana" AWS_S3_BUCKET_NAME: my-backup-bucket # S3 bucket which you own, and already exists AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID} # Read AWS secrets from environment (or a .env file) AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY} diff --git a/src/backup.sh b/src/backup.sh index 91828dc..ff39411 100755 --- a/src/backup.sh +++ b/src/backup.sh @@ -27,11 +27,8 @@ info "Backup starting" TIME_START="$(date +%s.%N)" DOCKER_SOCK="/var/run/docker.sock" -if [ ! -z "$BACKUP_CUSTOM_LABEL" ]; then +if [ -S "$DOCKER_SOCK" ] && [ ! -z "$BACKUP_CUSTOM_LABEL" ]; then CUSTOM_LABEL="--filter label=$BACKUP_CUSTOM_LABEL" -fi - -if [ -S "$DOCKER_SOCK" ]; then TEMPFILE="$(mktemp)" docker ps --format "{{.ID}}" --filter "label=docker-volume-backup.stop-during-backup=true" $CUSTOM_LABEL > "$TEMPFILE" CONTAINERS_TO_STOP="$(cat $TEMPFILE | tr '\n' ' ')" @@ -43,7 +40,13 @@ if [ -S "$DOCKER_SOCK" ]; then else CONTAINERS_TO_STOP_TOTAL="0" CONTAINERS_TOTAL="0" - echo "Cannot access \"$DOCKER_SOCK\", won't look for containers to stop" + if [ ! -S "$DOCKER_SOCK" ]; then + echo "Cannot access \"$DOCKER_SOCK\"." + fi + if [ -z "$BACKUP_CUSTOM_LABEL" ]; then + echo "No BACKUP_CUSTOM_LABEL set." + fi + echo "Thus, won't look for containers to stop." fi if [ "$CONTAINERS_TO_STOP_TOTAL" != "0" ]; then diff --git a/test/stopping-containers-while-backing-up/docker-compose.yml b/test/stopping-containers-while-backing-up/docker-compose.yml index cb81f20..4c61c4d 100644 --- a/test/stopping-containers-while-backing-up/docker-compose.yml +++ b/test/stopping-containers-while-backing-up/docker-compose.yml @@ -10,11 +10,13 @@ services: - grafana-data:/var/lib/grafana labels: - "docker-volume-backup.stop-during-backup=true" + - "grafana" backup: build: ../.. environment: BACKUP_CRON_EXPRESSION: "* * * * *" + BACKUP_CUSTOM_LABEL: "grafana" AWS_S3_BUCKET_NAME: docker-volume-backup-test-bucket AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID} AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}