userver.dockerfile 913 B

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