1
0
mirror of https://github.com/toby1991/minio-rclone-webdav-server.git synced 2025-04-18 20:04:00 +03:00
minio-rclone-webdav-server/Dockerfile.restic
2021-09-11 20:31:39 +08:00

41 lines
1.3 KiB
Docker

############################
# STEP 1 build executable binary
############################
FROM alpine:latest AS builder
ENV RCLONE_VERSION=v1.56.0
WORKDIR /bin/
RUN wget https://github.com/ncw/rclone/releases/download/${RCLONE_VERSION}/rclone-${RCLONE_VERSION}-linux-amd64.zip -O ./rclone.zip \
&& unzip ./rclone.zip -d ./ \
&& mv ./rclone-${RCLONE_VERSION}-linux-amd64/rclone ./rclone
############################
# STEP 2 build a small server image
############################
FROM alpine:latest
ENV BUCKET=rclone
ENV AUTH_USER=rclone
ENV AUTH_PASS=rclone123
ENV BASE_URL=/
ENV RC_USER=gui
ENV RC_PASS=gui123
RUN apk update \
&& apk add --no-cache fuse \
&& sed -i 's/#user_allow_other/user_allow_other/' /etc/fuse.conf
# cleanup
RUN rm -rf /tmp/* \
&& rm -rf /var/tmp/* \
&& rm -rf /var/cache/apk/*
VOLUME ["/root/.config/rclone", "/root/.cache/rclone/webgui"]
COPY ./rclone.conf /root/.config/rclone/rclone.conf
COPY --from=builder /bin/rclone /rclone
WORKDIR /
# Run the server binary.
ENTRYPOINT /rclone -v --no-check-certificate --rc --rc-web-gui --rc-web-gui-no-open-browser --rc-user ${RC_USER} --rc-pass ${RC_PASS} --rc-addr :5572 --rc-serve serve restic minio:${BUCKET} --cache-objects=false --addr :80 --user ${AUTH_USER} --pass ${AUTH_PASS} --baseurl ${BASE_URL}
EXPOSE 80
EXPOSE 5572