mirror of
https://github.com/cloudflare/cloudflared.git
synced 2025-05-11 22:16:37 +00:00

* Allow Dockerfile --build-args to override GOOS and GOARCH defaults Allow Dockerfile --build-args to override GOOS and GOARCH defaults Support building multi architecture binaries remove default OS and ARCH to avoid tag confusion when compiling image through Makefile Tag image with corrosponding OS and ARCH build variables updating Makefile Signed-off-by: Michael Fornaro <20387402+xUnholy@users.noreply.github.com> * remove duplicate import on windows_service.go Signed-off-by: Michael Fornaro <20387402+xUnholy@users.noreply.github.com>
30 lines
730 B
Docker
30 lines
730 B
Docker
# use a builder image for building cloudflare
|
|
ARG TARGET_GOOS
|
|
ARG TARGET_GOARCH
|
|
FROM golang:1.13.3 as builder
|
|
ENV GO111MODULE=on \
|
|
CGO_ENABLED=0 \
|
|
TARGET_GOOS=${TARGET_GOOS} \
|
|
TARGET_GOARCH=${TARGET_GOARCH}
|
|
|
|
WORKDIR /go/src/github.com/cloudflare/cloudflared/
|
|
|
|
# copy our sources into the builder image
|
|
COPY . .
|
|
|
|
# compile cloudflared
|
|
RUN make cloudflared
|
|
|
|
# use a distroless base image with glibc
|
|
FROM gcr.io/distroless/base-debian10:nonroot
|
|
|
|
# copy our compiled binary
|
|
COPY --from=builder --chown=nonroot /go/src/github.com/cloudflare/cloudflared/cloudflared /usr/local/bin/
|
|
|
|
# run as non-privileged user
|
|
USER nonroot
|
|
|
|
# command / entrypoint of container
|
|
ENTRYPOINT ["cloudflared", "--no-autoupdate"]
|
|
CMD ["version"]
|