diff --git a/Dockerfile b/Dockerfile index cc77f12..00546bc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -287,7 +287,11 @@ RUN chmod +x /usr/local/bin/smoke.sh # 21. Application — FastAPI + async runner (wave 1: steps 2+3+4) # ============================================================ COPY pyproject.toml requirements.txt /app/ -RUN pip install --break-system-packages --no-cache-dir -r /app/requirements.txt +# --force-reinstall is the critical flag: without it, pip skips packages +# already in /root/.local/ (left there by the earlier pipx bootstrap as +# USER root). uvicorn under /usr/local/bin needs them in +# /usr/local/lib/python3.11/dist-packages, so force the system install. +RUN pip install --break-system-packages --no-cache-dir --force-reinstall -r /app/requirements.txt COPY --chown=crafter:crafter crafting_table /app/crafting_table RUN chown -R crafter:crafter /app