FROM ubuntu:22.04 AS builder RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential cmake g++ \ librdkafka-dev \ python3 python3-pip \ && rm -rf /var/lib/apt/lists/* RUN pip3 install flask WORKDIR /app COPY . . RUN mkdir -p build && cd build && \ cmake .. -DCMAKE_BUILD_TYPE=Release \ -DEUNEX_USE_KAFKA=ON \ -DEUNEX_BUILD_TESTS=ON \ -DEUNEX_BUILD_EXAMPLES=ON && \ cmake --build . --config Release -j$(nproc) FROM ubuntu:22.04 RUN apt-get update && apt-get install -y --no-install-recommends \ librdkafka1 python3 python3-pip nginx \ && rm -rf /var/lib/apt/lists/* RUN pip3 install flask WORKDIR /app COPY --from=builder /app/build/eunex_me /app/ COPY --from=builder /app/build/test_orderbook /app/ COPY --from=builder /app/build/test_matching_engine /app/ COPY --from=builder /app/build/test_threaded_engine /app/ COPY --from=builder /app/build/test_clearing_house /app/ COPY --from=builder /app/build/test_fix_gateway /app/ COPY --from=builder /app/build/test_ai_trader /app/ COPY --from=builder /app/build/test_stop_orders /app/ COPY --from=builder /app/build/simple_match /app/ COPY --from=builder /app/dashboard/ /app/dashboard/ COPY --from=builder /app/shared/ /app/shared/ COPY --from=builder /app/fix_gateway/ /app/fix_gateway/ COPY --from=builder /app/clearing_house/ /app/clearing_house/ COPY --from=builder /app/run.sh /app/run.sh COPY --from=builder /app/docker/nginx.conf /etc/nginx/conf.d/default.conf RUN mkdir -p /app/data /app/logs /app/.pids && chmod +x /app/run.sh ENV EUNEX_DATA_DIR=/app/data ENV PYTHONPATH=/app EXPOSE 7860 8080 8081 9001 CMD ["/app/run.sh"]