| FROM python:3.11-slim |
|
|
| ENV PYTHONDONTWRITEBYTECODE=1 \ |
| PYTHONUNBUFFERED=1 \ |
| PIP_NO_CACHE_DIR=1 \ |
| DATA_DIR=/data \ |
| PORT=7860 |
|
|
| WORKDIR /app |
|
|
| RUN apt-get update \ |
| && apt-get install -y --no-install-recommends build-essential curl \ |
| && rm -rf /var/lib/apt/lists/* |
|
|
| COPY requirements.txt . |
| RUN pip install --upgrade pip \ |
| && pip install -r requirements.txt |
|
|
| COPY app ./app |
| COPY frontend ./frontend |
| COPY notebooks ./notebooks |
| COPY .env.example README.md ./ |
|
|
| RUN mkdir -p /data |
|
|
| EXPOSE 7860 |
|
|
| CMD ["sh", "-c", "uvicorn app.main:app --host 0.0.0.0 --port ${PORT:-7860}"] |
|
|