userver.dockerfile 908 B

123456789101112131415161718192021
  1. FROM ghcr.io/userver-framework/docker-userver-build-base:v1a AS builder
  2. WORKDIR /src
  3. RUN git clone https://github.com/userver-framework/userver.git && \
  4. cd userver && git checkout b69a8db23844d3abbb68e40a502eae0ecd2e4b62
  5. COPY userver_benchmark/ ./
  6. RUN mkdir build && cd build && \
  7. cmake -DUSERVER_IS_THE_ROOT_PROJECT=0 -DUSERVER_OPEN_SOURCE_BUILD=1 -DUSERVER_FEATURE_CRYPTOPP_BLAKE2=0 \
  8. -DUSERVER_FEATURE_REDIS=0 -DUSERVER_FEATURE_CLICKHOUSE=0 -DUSERVER_FEATURE_MONGODB=0 -DUSERVER_FEATURE_RABBITMQ=0 -DUSERVER_FEATURE_GRPC=0 \
  9. -DUSERVER_FEATURE_UTEST=0 \
  10. -DUSERVER_FEATURE_POSTGRESQL=1 \
  11. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-march=native" .. && \
  12. make -j $(nproc)
  13. FROM builder AS runner
  14. WORKDIR /app
  15. COPY userver_configs/* ./
  16. COPY --from=builder /src/build/userver_techempower ./
  17. EXPOSE 8080
  18. CMD ./userver_techempower -c ./static_config.yaml