Dockerfile 845 B

1234567891011121314151617181920212223242526272829303132333435
  1. ####################################################
  2. # build stage
  3. ####################################################
  4. FROM alpine:3.18 AS build
  5. RUN apk update && \
  6. apk add --no-cache \
  7. build-base zlib-dev
  8. WORKDIR /civetweb
  9. COPY src ./src/
  10. COPY include ./include/
  11. COPY Makefile ./
  12. COPY resources ./resources/
  13. COPY *.md ./
  14. RUN make build && \
  15. make WITH_ALL=1 && \
  16. make install PREFIX=/app
  17. ####################################################
  18. # image stage
  19. ####################################################
  20. FROM alpine:3.18
  21. RUN apk update && \
  22. apk add --no-cache \
  23. libstdc++ zlib
  24. RUN addgroup -S civetweb && adduser -S civetweb -G civetweb
  25. USER civetweb
  26. COPY --chown=civetweb:civetweb --from=build /app/ /app/
  27. ENTRYPOINT [ "/app/bin/civetweb", "/app/etc/civetweb.conf" ]