Ankit3445/options_pricing
0
1# ── Build Stage ──2FROM gcc:14.2-bookworm AS builder3 4RUN apt-get update && apt-get install -y --no-install-recommends \5 cmake libboost-system-dev libssl-dev ca-certificates git \6 && rm -rf /var/lib/apt/lists/*7 8WORKDIR /src9 10COPY CMakeLists.txt ./11COPY Common.hpp ThreadSafeQueue.hpp Config.hpp \12 AlphaVantageClient.hpp AlphaVantageClient.cpp \13 PricingEngine.hpp PricingEngine.cpp \14 PortfolioManager.hpp PortfolioManager.cpp \15 Strategy.hpp Strategy.cpp \16 main.cpp ./17 18RUN mkdir build && cd build && \19 cmake .. -DCMAKE_BUILD_TYPE=Release && \20 cmake --build . --parallel 221 22# ── Runtime Stage ──23FROM debian:bookworm-slim24 25RUN apt-get update && apt-get install -y --no-install-recommends \26 libboost-system1.74.0 libssl3 ca-certificates \27 && rm -rf /var/lib/apt/lists/*28 29# Copy libstdc++ from builder (GCC 14.2) since bookworm has GCC 12.230COPY --from=builder /usr/local/lib64/libstdc++.so.6* /usr/lib/x86_64-linux-gnu/31COPY --from=builder /src/build/options_pricer /usr/local/bin/options_pricer32 33EXPOSE 786034 35ENV API_KEY="demo"36ENV SYMBOLS="AAPL"37 38CMD options_pricer "$API_KEY" $SYMBOLS --port 7860 --mc-paths 500039 