mirror of
https://github.com/gravitl/netmaker.git
synced 2025-02-26 17:15:23 +08:00
34 lines
727 B
Text
34 lines
727 B
Text
#first stage - builder
|
|
FROM gravitl/builder as builder
|
|
|
|
WORKDIR /app
|
|
|
|
COPY . .
|
|
|
|
ENV GO111MODULE=auto
|
|
|
|
RUN GOOS=linux GOARCH=amd64 CGO_ENABLED=1 /usr/local/go/bin/go build -ldflags="-w -s" -o netmaker main.go
|
|
|
|
WORKDIR /app/netclient
|
|
|
|
RUN GOOS=linux GOARCH=amd64 CGO_ENABLED=0 /usr/local/go/bin/go build -ldflags="-w -s" -o netclient main.go
|
|
#second stage
|
|
|
|
FROM alpine:3.13.6
|
|
# add a c lib
|
|
RUN apk add gcompat iptables
|
|
# set the working directory
|
|
WORKDIR /root/
|
|
|
|
RUN mkdir /etc/netclient
|
|
|
|
COPY --from=builder /app/netmaker .
|
|
COPY --from=builder /app/config config
|
|
COPY --from=builder /app/netclient/netclient /etc/netclient/netclient
|
|
|
|
RUN chmod 0755 /etc/netclient/netclient
|
|
|
|
EXPOSE 8081
|
|
EXPOSE 50051
|
|
|
|
ENTRYPOINT ["./netmaker"]
|