dockerfiles/restic-server

27 lines
1.1 KiB
Plaintext

# docker buildx build --pull - --platform linux/amd64,linux/arm64 --push --tag quay.io/remram44/restic-server:0.13.0-restic0.17.1 < restic-server
FROM python:3.12 AS client
ARG RESTIC_VERSION=0.17.1
ARG TARGETPLATFORM
RUN if [ ${TARGETPLATFORM} = "linux/amd64" ]; then SUFFIX=linux_amd64; HASH=bdfaf16fe933136e3057e64e28624f2e0451dbd47e23badb2d37dbb60fdb6a70; \
elif [ ${TARGETPLATFORM} = "linux/arm64" ]; then SUFFIX=linux_arm64; HASH=aa9d86ac5f261f6a8295d5503bb27761ba7fe1fc1cf26fa52e7ab249b9a04716; \
else echo "no URL for $(TARGETPLATFORM)"; exit 1; fi && \
curl -Lo /tmp/restic.bz2 https://github.com/restic/restic/releases/download/v${RESTIC_VERSION}/restic_${RESTIC_VERSION}_${SUFFIX}.bz2 && \
printf "${HASH} /tmp/restic.bz2\\n" | sha256sum -c && \
bunzip2 < /tmp/restic.bz2 > /restic && \
chmod +x /restic
FROM restic/rest-server:0.13.0
ENV TINI_VERSION v0.19.0
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini-muslc-amd64 /tini
RUN chmod +x /tini
COPY --from=client /restic /usr/local/bin
ENTRYPOINT ["/tini", "--"]
CMD ["/entrypoint.sh"]