2020-05-04 03:45:36 -07:00
|
|
|
ARG GOVERSION=latest
|
|
|
|
FROM golang:$GOVERSION AS builder
|
2023-06-30 23:35:41 -07:00
|
|
|
ARG BUILD_USER
|
|
|
|
ARG BUILD_HOST
|
|
|
|
ARG TARGETARCH
|
2019-11-11 01:37:08 -07:00
|
|
|
|
|
|
|
WORKDIR /src
|
|
|
|
COPY . .
|
|
|
|
|
|
|
|
ENV CGO_ENABLED=0
|
2023-06-30 23:35:41 -07:00
|
|
|
RUN if [ ! -f stdiscosrv-linux-$TARGETARCH ] ; then \
|
|
|
|
go run build.go -no-upgrade build stdiscosrv ; \
|
|
|
|
mv stdiscosrv stdiscosrv-linux-$TARGETARCH ; \
|
|
|
|
fi
|
2019-11-11 01:37:08 -07:00
|
|
|
|
|
|
|
FROM alpine
|
2023-06-30 23:35:41 -07:00
|
|
|
ARG TARGETARCH
|
2019-11-11 01:37:08 -07:00
|
|
|
|
2023-11-13 23:46:14 -07:00
|
|
|
LABEL org.opencontainers.image.authors="The Syncthing Project" \
|
|
|
|
org.opencontainers.image.url="https://syncthing.net" \
|
|
|
|
org.opencontainers.image.documentation="https://docs.syncthing.net" \
|
|
|
|
org.opencontainers.image.source="https://github.com/syncthing/syncthing" \
|
|
|
|
org.opencontainers.image.vendor="The Syncthing Project"
|
|
|
|
org.opencontainers.image.licenses="MPL-2.0"
|
|
|
|
org.opencontainers.image.title="Syncthing Discovery Server"
|
|
|
|
|
2019-11-11 01:37:08 -07:00
|
|
|
EXPOSE 19200 8443
|
|
|
|
|
|
|
|
VOLUME ["/var/stdiscosrv"]
|
|
|
|
|
|
|
|
RUN apk add --no-cache ca-certificates su-exec
|
|
|
|
|
2023-06-30 23:35:41 -07:00
|
|
|
COPY --from=builder /src/stdiscosrv-linux-$TARGETARCH /bin/stdiscosrv
|
2019-11-11 01:37:08 -07:00
|
|
|
COPY --from=builder /src/script/docker-entrypoint.sh /bin/entrypoint.sh
|
|
|
|
|
|
|
|
ENV PUID=1000 PGID=1000 HOME=/var/stdiscosrv
|
|
|
|
|
|
|
|
HEALTHCHECK --interval=1m --timeout=10s \
|
|
|
|
CMD nc -z localhost 8443 || exit 1
|
|
|
|
|
|
|
|
WORKDIR /var/stdiscosrv
|
|
|
|
ENTRYPOINT ["/bin/entrypoint.sh", "/bin/stdiscosrv"]
|