56 lines · 1.2 KB · Dockerfile
RawDownload
FROM golang:alpine AS builder ARG CGO_ENABLED=0 WORKDIR /go/src/github.com/rclone/rclone/ RUN echo "**** Set Go Environment Variables ****" && \    go env -w GOCACHE=/root/.cache/go-build RUN echo "**** Install Dependencies ****" && \    apk add --no-cache \        make \        bash \        gawk \        git COPY go.mod .COPY go.sum . RUN echo "**** Download Go Dependencies ****" && \    go mod download -x RUN echo "**** Verify Go Dependencies ****" && \    go mod verify COPY . . RUN --mount=type=cache,target=/root/.cache/go-build,sharing=locked \    echo "**** Build Binary ****" && \    make RUN echo "**** Print Version Binary ****" && \    ./rclone version # Begin final imageFROM alpine:latest ARG RCLONE_UID=1009ARG RCLONE_GID=1009 RUN echo "**** Install Dependencies ****" && \    apk add --no-cache \        ca-certificates \        fuse3 \        tzdata && \    echo "Enable user_allow_other in fuse" && \    echo "user_allow_other" >> /etc/fuse.conf COPY --from=builder /go/src/github.com/rclone/rclone/rclone /usr/local/bin/ RUN addgroup -g "${RCLONE_GID}" rclone && adduser -u "${RCLONE_UID}" -Ds /bin/sh -G rclone rclone ENTRYPOINT [ "rclone" ] WORKDIR /dataENV XDG_CONFIG_HOME=/config