Dockerfile 506 B

123456789101112131415161718192021
  1. #first stage - builder
  2. FROM golang:1.17-alpine as builder
  3. ARG version
  4. RUN apk add build-base
  5. WORKDIR /app
  6. COPY . .
  7. ENV GO111MODULE=auto
  8. RUN GOOS=linux CGO_ENABLED=1 go build -ldflags="-s -X 'main.version=${version}'" -o netmaker main.go
  9. FROM alpine:3.14.3
  10. # add a c lib
  11. RUN apk add gcompat iptables
  12. # set the working directory
  13. WORKDIR /root/
  14. RUN mkdir -p /etc/netclient/config
  15. COPY --from=builder /app/netmaker .
  16. COPY --from=builder /app/config config
  17. EXPOSE 8081
  18. EXPOSE 50051
  19. ENTRYPOINT ["./netmaker"]