Dockerfile 1020 B

12345678910111213141516171819202122232425
  1. FROM python:3.11-alpine AS build
  2. ARG S3QL_VERSION=5.0.0
  3. COPY requirements.txt /
  4. RUN apk --no-cache add curl gnupg jq bzip2 g++ make pkgconfig fuse3-dev sqlite-dev libffi-dev openssl-dev cargo git cython sphinx
  5. RUN pip install --user --ignore-installed -r requirements.txt
  6. RUN gpg2 --batch --keyserver keyserver.ubuntu.com --recv-key 0xD113FCAC3C4E599F
  7. ARG FILE="s3ql-$S3QL_VERSION"
  8. RUN git clone https://github.com/s3ql/s3ql.git $FILE
  9. WORKDIR $FILE
  10. RUN python3 setup.py build_cython build_ext --inplace \
  11. && python3 setup.py install --user
  12. FROM python:3.11-alpine
  13. RUN apk --no-cache add fuse3 psmisc
  14. COPY --from=build /root/.local/bin/ /usr/local/bin/
  15. COPY --from=build /root/.local/lib/ /usr/local/lib/
  16. COPY ./authfile.sh ./entrypoint.sh ./mount.sh /usr/local/bin/
  17. RUN chmod 755 /usr/local/bin/*.sh
  18. ENV MOUNTPOINT=/s3ql
  19. VOLUME /root/.s3ql
  20. HEALTHCHECK --interval=300s CMD ["/bin/sh","-c","s3qlstat --quiet $MOUNTPOINT"]
  21. ENTRYPOINT ["/bin/sh","/usr/local/bin/entrypoint.sh"]
  22. CMD ["/bin/sh","/usr/local/bin/mount.sh"]