borgmatic-collective / docker-borgmatic

Borgmatic in Docker
GNU General Public License v3.0
313 stars 88 forks source link

First backup failing #291

Closed Eirikr70 closed 5 months ago

Eirikr70 commented 5 months ago

Hello, I am failing setting up Borgmatic for the first backup, and I hardly find where to look for. I have tried to run it as root with no more luck. Here is my docker-compose.yml

version: '3'
services:
  borgmatic:
    image: ghcr.io/borgmatic-collective/borgmatic
    container_name: borgmatic
    volumes:
      - /srv/nas:/mnt/source:ro            # backup source
      - /srv/hdd/borg:/mnt/borg-repository      # backup target
      - ./borgmatic-conf:/etc/borgmatic.d/  # borgmatic config file(s) + crontab.txt
      - ./state:/root/.borgmatic # borgmatic state files
      - ./borg-conf:/root/.config/borg   # config and keyfiles
#      - ${VOLUME_SSH}:/root/.ssh                   # ssh key for remote repositories
      - ./cache:/root/.cache/borg     # checksums used for deduplication
    environment:
      - TZ="Europe/Paris"
#      - BORG_PASSPHRASE=''
      - BACKUP_CRON=0 2 * * *
      - GUID=1000
      - PUID=1000
    cpu_shares: 2048

My config.yaml

source_directories:
    - /mnt/source
repositories:
    - path: /mnt/borg-repository
one_file_system: true

#   Passphrase is set in variable $BORG_PASSPHRASE
#   encryption_passphrase: "DoNotMissToChangeYourPassphrase"
compression: lz4
archive_name_format: 'backup-{now}'

# keep_hourly: 2
keep_daily: 7
keep_weekly: 4
keep_monthly: 2
# keep_yearly: 10

checks:
    - name: repository
    - name: archives
check_last: 3

before_backup:
    - echo "Starting a backup job."
after_backup:
    - echo "Backup created."
    - apprise -t "Sauvegarde réalisée" "gotifys://got.myself.fr/Mykey?priority=low"
on_error:
    - echo "Error while creating a backup."
    - apprise -t "Echec de la sauvegarde" -b "La sauvegarde Borgmatic a échoué. Regardez la log" "gotifys://got.myself.fr/Mykey?priority=medium"

And the logs

eric@vault:~/borg $ sudo docker compose logs
borgmatic  | borgmatic 1.8.5
borgmatic  | borg 1.2.7
borgmatic  | apprise 1.6.0
borgmatic  | Crontab file exists, using it
borgmatic  | time="2024-01-12T15:24:50Z" level=info msg="read crontab: /etc/borgmatic.d/crontab.txt"
borgmatic  | time="2024-01-12T15:24:50Z" level=info msg="crontab is valid"
borgmatic  | The variable SUPERCRONIC_EXTRA_FLAGS is empty, starting normally
borgmatic  | time="2024-01-12T15:24:50Z" level=info msg="read crontab: /etc/borgmatic.d/crontab.txt"
borgmatic  | time="2024-01-13T02:00:00Z" level=info msg=starting iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:01Z" level=info msg="Starting a backup job." channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:03Z" level=info msg="/mnt/borg-repository: Error running actions for repository" channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:03Z" level=info msg="Command 'borg create --compression lz4 --one-file-system --stats /mnt/borg-repository::backup-{now} /etc/borgmatic.d/config.yaml /mnt/source /root/.borgmatic' returned non-zero exit status 2." channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:03Z" level=info msg="Error while creating a backup." channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:04Z" level=info msg="2024-01-13 02:00:04,958 - INFO - Sent Gotify notification." channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="/etc/borgmatic.d/config.yaml: An error occurred" channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="summary:" channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="/etc/borgmatic.d/config.yaml: An error occurred" channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="/mnt/borg-repository: Error running actions for repository" channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="/mnt/borg-repository is not a valid repository. Check repo config." channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="Command 'borg create --compression lz4 --one-file-system --stats /mnt/borg-repository::backup-{now} /etc/borgmatic.d/config.yaml /mnt/source /root/.borgmatic' returned non-zero exit status 2." channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=info msg="Need some help? https://torsion.org/borgmatic/#issues" channel=stderr iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
borgmatic  | time="2024-01-13T02:00:05Z" level=error msg="error running command: exit status 1" iteration=0 job.command="PATH=$PATH:/usr/local/bin /usr/local/bin/borgmatic --stats -v 0 > /tmp/backup_run.log" job.position=0 job.schedule="0 2 * * *"
witten commented 5 months ago

It looks the error here is /mnt/borg-repository is not a valid repository. Check repo config.? So have you initialized/created the repository before trying to make a backup?

Eirikr70 commented 5 months ago

Thanks @witten, starting my initial backup. Seems to be running fine.