Dockerfile 662 B

123456789101112131415161718192021222324252627282930313233
  1. FROM golang:alpine
  2. ARG VERSION
  3. ARG BUILDDATE
  4. ARG HOST
  5. ADD . /src
  6. WORKDIR /src
  7. RUN env CGO_ENABLED=0 GOOS=linux \
  8. go build \
  9. -mod vendor \
  10. -tags netgo \
  11. -ldflags "-s -X main.Version=$VERSION -X main.BuildDate=$BUILDDATE -X main.BuildHost=$HOST -extldflags 'static'" \
  12. ./cmd/server
  13. RUN env CGO_ENABLED=0 GOOS=linux \
  14. go build \
  15. -mod vendor \
  16. -tags netgo \
  17. -ldflags "-s -X main.Version=$VERSION -X main.BuildDate=$BUILDDATE -X main.BuildHost=$HOST -extldflags 'static'" \
  18. ./cmd/download
  19. FROM alpine:latest
  20. COPY --from=0 /src/server /
  21. COPY --from=0 /src/download /
  22. USER nobody:nobody
  23. WORKDIR /
  24. CMD /server
  25. EXPOSE 7763