2022-01-12 12:29:59 +00:00
|
|
|
# Builder image
|
2022-07-06 21:29:34 +00:00
|
|
|
FROM --platform=$BUILDPLATFORM docker.io/golang:1.18.0-alpine AS build
|
2022-06-18 09:36:09 +00:00
|
|
|
ARG VERSION=dev
|
2022-01-12 12:29:59 +00:00
|
|
|
ENV GOPATH /go
|
|
|
|
WORKDIR /go/src/headscale
|
|
|
|
|
|
|
|
COPY go.mod go.sum /go/src/headscale/
|
|
|
|
RUN apk add gcc musl-dev
|
|
|
|
RUN go mod download
|
|
|
|
|
|
|
|
COPY . .
|
|
|
|
|
2022-07-06 21:29:34 +00:00
|
|
|
ARG TARGETOS TARGETARCH
|
|
|
|
RUN CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH go build -o /go/bin/headscale -ldflags="-s -w -X github.com/juanfont/headscale/cmd/headscale/cli.Version=$VERSION" -a ./cmd/headscale
|
2022-01-12 12:29:59 +00:00
|
|
|
RUN test -e /go/bin/headscale
|
|
|
|
|
|
|
|
# Production image
|
2022-01-15 15:04:00 +00:00
|
|
|
FROM docker.io/alpine:latest
|
2022-01-12 12:29:59 +00:00
|
|
|
|
|
|
|
COPY --from=build /go/bin/headscale /bin/headscale
|
|
|
|
ENV TZ UTC
|
|
|
|
|
|
|
|
EXPOSE 8080/tcp
|
|
|
|
CMD ["headscale"]
|