FROM python:3.12-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . RUN pytest -q EXPOSE 8080 ENV SIM_CONFIG=/app/config/sim.default.json ENV TRACK_CONFIG=/app/config/track.default.json CMD ["uvicorn", "trainsim.app:create_app", "--factory", "--host", "0.0.0.0", "--port", "8080"]