| 1 | FROM python:3.11-slim |
| 2 | |
| 3 | ENV PYTHONDONTWRITEBYTECODE=1 \ |
| 4 | PYTHONUNBUFFERED=1 |
| 5 | |
| 6 | WORKDIR /app |
| 7 | |
| 8 | RUN apt-get update \ |
| 9 | && apt-get install -y --no-install-recommends default-jre-headless \ |
| 10 | && rm -rf /var/lib/apt/lists/* |
| 11 | |
| 12 | COPY services/ibkr-connector/pyproject.toml /app/pyproject.toml |
| 13 | COPY services/ibkr-connector/app /app/app |
| 14 | |
| 15 | RUN pip install --no-cache-dir . |
| 16 | |
| 17 | RUN addgroup --gid 1000 ibkr \ |
| 18 | && adduser --uid 1000 --gid 1000 --disabled-password --gecos "" ibkr \ |
| 19 | && chown -R 1000:1000 /app |
| 20 | |
| 21 | USER 1000:1000 |
| 22 | |
| 23 | EXPOSE 8080 |
| 24 | |
| 25 | CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8080", "--no-access-log"] |