Files
gochat/channels/shangwutong/Dockerfile
T

32 lines
935 B
Docker

FROM golang:1.26.4-alpine AS builder
WORKDIR /src/channels/shangwutong
RUN apk add --no-cache ca-certificates git
COPY channels/shangwutong/go.mod channels/shangwutong/go.sum ./
RUN go mod download
COPY channels/shangwutong/ ./
RUN CGO_ENABLED=0 GOOS=linux go build -trimpath -ldflags="-s -w" -o /out/shangwutong ./cmd/shangwutong
FROM alpine:3.22
RUN apk add --no-cache ca-certificates tzdata \
&& addgroup -S -g 10001 connector \
&& adduser -S -D -H -u 10001 -G connector connector \
&& mkdir -p /data /backup \
&& chown connector:connector /data /backup \
&& chmod 0700 /data /backup
COPY --from=builder /out/shangwutong /usr/local/bin/shangwutong
USER connector:connector
VOLUME ["/data", "/backup"]
EXPOSE 9100
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
CMD wget -q -T 3 -O /dev/null http://127.0.0.1:9100/readyz || exit 1
ENTRYPOINT ["/usr/local/bin/shangwutong"]
CMD ["serve"]