2023-03-14 18:32:14 +00:00
|
|
|
# FROM archlinux:latest
|
2023-05-14 21:45:12 +00:00
|
|
|
FROM alpine:latest AS final
|
2023-03-14 18:32:14 +00:00
|
|
|
|
|
|
|
# Install duplicity
|
|
|
|
# RUN pacman --noconfirm -Syu duplicity python-pip python-pydrive2
|
2023-03-15 08:19:27 +00:00
|
|
|
ENV CARGO_NET_GIT_FETCH_WITH_CLI=true
|
|
|
|
RUN \
|
2023-05-14 16:13:13 +00:00
|
|
|
apk add py3-pip python3-dev gcc libffi-dev musl-dev openssl-dev pkgconfig duplicity rust cargo git && \
|
|
|
|
pip install --upgrade pip && \
|
2023-03-15 08:19:27 +00:00
|
|
|
pip install pydrive2 && \
|
2023-05-14 16:13:13 +00:00
|
|
|
apk del rust musl-dev libffi-dev gcc python3-dev cargo git pkgconfig openssl-dev
|
2023-03-14 18:32:14 +00:00
|
|
|
|
|
|
|
WORKDIR /var/lib/duplicity
|
|
|
|
ENV HOME="/var/lib/duplicity"
|
|
|
|
|
2023-05-17 13:51:14 +00:00
|
|
|
# Add entrypoint
|
|
|
|
COPY ./entrypoint.sh ./entrypoint.sh
|
|
|
|
COPY ./restore.sh ./restore.sh
|
|
|
|
COPY ./backup.sh /etc/periodic/daily/backup.sh
|
|
|
|
|
2023-03-14 18:32:14 +00:00
|
|
|
# Configure entrypoint and command
|
2023-05-17 12:27:55 +00:00
|
|
|
ENTRYPOINT ["./entrypoint.sh"]
|
2023-03-14 18:32:14 +00:00
|
|
|
CMD []
|
|
|
|
|
|
|
|
# Add image labels
|
2023-03-14 18:38:14 +00:00
|
|
|
LABEL org.opencontainers.image.title="backup-duplicity"
|
2023-03-14 18:32:14 +00:00
|
|
|
LABEL org.opencontainers.image.description="Backup solution for Docker volumes based on Duplicity"
|
|
|
|
LABEL org.opencontainers.image.licenses="AGPL-3.0-or-later"
|
|
|
|
LABEL org.opencontainers.image.url="https://github.com/Steffo99/docker-backup-duplicity"
|
|
|
|
LABEL org.opencontainers.image.authors="Stefano Pigozzi <me@steffo.eu>"
|
|
|
|
|
|
|
|
# Configure duplicity
|
|
|
|
ENV DUPLICITY_FULL_IF_OLDER_THAN=1M
|
2023-03-14 18:35:07 +00:00
|
|
|
|