feat: use cron to run backups

This commit is contained in:
Michael Mandl 2023-08-17 17:00:22 +02:00
parent d2a3aa0b32
commit 6dc493b37e
Signed by: mandlm
GPG key ID: 4AA25D647AA54CC7
3 changed files with 25 additions and 7 deletions

View file

@ -1,5 +1,12 @@
FROM kopia/kopia
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y cron && rm -rf /var/lib/apt/lists/*
ARG KOPIA_CRON_TIMES="*/30 * * * *"
ENV KOPIA_CRON_TIMES ${KOPIA_CRON_TIMES}
ADD run-backup.sh /
ADD entrypoint.sh /
ENTRYPOINT [ "/entrypoint.sh" ]

View file

@ -1,10 +1,11 @@
#!/bin/sh
#!/bin/sh
kopia --version
CRONTAB=/etc/cron.d/kopia-backup
kopia repository connect filesystem \
--path /repository \
--override-hostname ${KOPIA_HOSTNAME} \
--override-username ${KOPIA_USERNAME}
echo "Running cron with schedule ${KOPIA_CRON_TIMES}"
sleep infinity
echo "${KOPIA_CRON_TIMES} /run-backup.sh > /dev/stdout" > ${CRONTAB}
chmod 0644 ${CRONTAB}
crontab ${CRONTAB}
cron -f

10
run-backup.sh Executable file
View file

@ -0,0 +1,10 @@
#!/bin/sh
kopia --version
kopia repository connect filesystem \
--path /repository \
--override-hostname ${KOPIA_HOSTNAME} \
--override-username ${KOPIA_USERNAME}
kopia snapshot create /backup