12345678910111213141516171819202122232425262728293031323334 |
- #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"]
|