2021-11-09 16:20:58 +00:00
# Builder image
2022-07-06 21:23:01 +02:00
FROM --platform=$BUILDPLATFORM docker.io/golang:1.18.0-bullseye AS build
2022-06-18 11:36:09 +02:00
ARG VERSION = dev
2021-06-16 23:27:40 -05:00
ENV GOPATH /go
2021-10-27 06:40:39 +00:00
WORKDIR /go/src/headscale
2021-10-26 21:35:18 +00:00
2021-08-08 17:39:39 +01:00
COPY go.mod go.sum /go/src/headscale/
RUN go mod download
2021-10-26 21:35:18 +00:00
COPY . .
2022-07-06 21:23:01 +02:00
ARG TARGETOS TARGETARCH
RUN CGO_ENABLED = 0 GOOS = $TARGETOS GOARCH = $TARGETARCH go install -ldflags= " -s -w -X github.com/juanfont/headscale/cmd/headscale/cli.Version= $VERSION " -a ./cmd/headscale
2022-01-14 09:19:16 +01:00
RUN strip /go/bin/headscale
2021-06-16 23:27:40 -05:00
RUN test -e /go/bin/headscale
2021-11-09 16:20:58 +00:00
# Production image
2021-11-06 23:19:56 +00:00
FROM gcr.io/distroless/base-debian11
2021-10-22 16:56:23 +00:00
2021-11-13 22:10:58 +00:00
COPY --from= build /go/bin/headscale /bin/headscale
2021-06-16 23:27:40 -05:00
ENV TZ UTC
2021-08-08 17:39:39 +01:00
2021-06-16 23:27:40 -05:00
EXPOSE 8080/tcp
2021-11-09 16:20:58 +00:00
CMD [ "headscale" ]