servnest-containers/sftpgo.Containerfile

20 lines
1.1 KiB
Text

FROM servnest_alpine AS builder
RUN apk add go
ARG SFTPGO
ADD $SFTPGO /
WORKDIR /sftpgo-2.6.2/
RUN cp -r openapi ./internal/bundle/openapi && \
cp -r templates ./internal/bundle/templates && \
cp -r static ./internal/bundle/static
RUN go build -tags nogcs,nos3,noazblob,nobolt,nomysql,nopgsql,nosqlite,noportable,nometrics,bundle -o /usr/local/bin/sftpgo && strip /usr/local/bin/sftpgo
FROM servnest_alpine
RUN apk add openssh-keygen bash
RUN mkdir /etc/sftpgo/ && ssh-keygen -f /etc/sftpgo/ed25519 -t ed25519 -N "" -C ""
RUN touch /etc/sftpgo/banner.txt
RUN ["/bin/bash", "-c", "fp=($(ssh-keygen -l -f /etc/sftpgo/ed25519)) && echo ${fp[1]} > /etc/sftpgo/ed25519.fp"]
RUN ssh-keygen -lv -f /etc/sftpgo/ed25519 | tail -n +2 > /etc/sftpgo/ed25519.asciiart
RUN mkdir /var/log/sftpgo/ && chown sftpgo: /var/log/sftpgo/ && chmod -R u=rwX,g=rX,o= /etc/sftpgo/ && chown -R root:sftpgo /etc/sftpgo/
COPY --from=builder /usr/local/bin/sftpgo /usr/local/bin/sftpgo
USER sftpgo
CMD ["sftpgo", "serve", "--config-file", "/etc/sftpgo/sftpgo.toml", "--log-level", "warn", "--log-max-age", "1", "--log-file-path", "/var/log/sftpgo/sftpgo.log"]