29 lines
1023 B
Docker
29 lines
1023 B
Docker
FROM --platform=$BUILDPLATFORM golang AS build
|
|
|
|
ARG GIT_DESC=undefined
|
|
|
|
WORKDIR /go/src/github.com/SenseUnit/dumbproxy
|
|
COPY . .
|
|
ARG TARGETOS TARGETARCH
|
|
RUN GOOS=$TARGETOS GOARCH=$TARGETARCH CGO_ENABLED=0 go build -a -tags netgo -ldflags '-s -w -extldflags "-static" -X main.version='"$GIT_DESC"
|
|
ADD https://curl.haxx.se/ca/cacert.pem /certs.crt
|
|
RUN chmod 0644 /certs.crt
|
|
RUN mkdir /.dumbproxy
|
|
|
|
FROM scratch AS scratch
|
|
COPY --from=build /go/src/github.com/SenseUnit/dumbproxy/dumbproxy /
|
|
COPY --from=build /certs.crt /etc/ssl/certs/ca-certificates.crt
|
|
COPY --from=build --chown=9999:9999 /.dumbproxy /.dumbproxy
|
|
USER 9999:9999
|
|
EXPOSE 8080/tcp
|
|
ENTRYPOINT ["/dumbproxy", "-bind-address", ":8080"]
|
|
|
|
FROM alpine AS alpine
|
|
COPY --from=build /go/src/github.com/SenseUnit/dumbproxy/dumbproxy /
|
|
COPY --from=build /certs.crt /etc/ssl/certs/ca-certificates.crt
|
|
COPY --from=build --chown=9999:9999 /.dumbproxy /.dumbproxy
|
|
RUN apk add --no-cache tzdata
|
|
USER 9999:9999
|
|
EXPOSE 8080/tcp
|
|
ENTRYPOINT ["/dumbproxy", "-bind-address", ":8080"]
|