Fix ai-service Dockerfile: bake in drug_entities.json, override its path
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
FROM python:3.12-slim
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends gcc \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY apps/ai-service/ ./
|
||||
# config.py's `entities_path` default assumes a full monorepo checkout
|
||||
# (parents[2] from apps/ai-service/config.py = repo root); this image only
|
||||
# has apps/ai-service flattened into /app, so the file is baked in here and
|
||||
# ENTITIES_PATH in .env.prod points at it instead.
|
||||
COPY ingestion/data/verified/drug_entities.json ./ingestion_data/drug_entities.json
|
||||
|
||||
# Flat module layout (rag/, adapters/, routers/...), not an installable
|
||||
# package — setuptools' auto-discovery rejects "multiple top-level packages"
|
||||
# for `pip install .`, so the runtime deps are listed directly instead,
|
||||
# mirroring pyproject.toml's [project.dependencies] + the metrics/generation
|
||||
# extras + boto3 (used for Bedrock, not declared in pyproject.toml).
|
||||
RUN pip install --no-cache-dir \
|
||||
"fastapi>=0.115,<1" \
|
||||
"httpx>=0.27,<1" \
|
||||
"psycopg[binary]>=3.2,<4" \
|
||||
"pydantic-settings>=2.6,<3" \
|
||||
"qdrant-client>=1.7,<2" \
|
||||
"uvicorn[standard]>=0.30,<1" \
|
||||
"prometheus-client>=0.20,<1" \
|
||||
"anthropic>=0.112,<1" \
|
||||
"boto3"
|
||||
|
||||
EXPOSE 8000
|
||||
|
||||
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
|
||||
Reference in New Issue
Block a user