chore: dockerfile und compose-beispiel

This commit is contained in:
2026-05-04 22:46:36 +02:00
parent a91150c41f
commit ec94fe899b
2 changed files with 53 additions and 0 deletions

29
docker-compose.yml Normal file
View File

@@ -0,0 +1,29 @@
services:
ingestor:
build:
context: .
dockerfile: docker/Dockerfile
env_file: .env
ports:
- "8000:8000"
depends_on:
- qdrant
- ollama
qdrant:
image: qdrant/qdrant:latest
ports:
- "6333:6333"
volumes:
- qdrant_data:/qdrant/storage
ollama:
image: ollama/ollama:latest
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
volumes:
qdrant_data:
ollama_data:

24
docker/Dockerfile Normal file
View File

@@ -0,0 +1,24 @@
FROM python:3.12-slim AS builder
RUN pip install --no-cache-dir uv
WORKDIR /app
COPY pyproject.toml uv.lock* ./
RUN uv sync --frozen --no-dev --no-install-project || uv sync --no-dev --no-install-project
COPY app ./app
RUN uv sync --frozen --no-dev || uv sync --no-dev
FROM python:3.12-slim
WORKDIR /app
COPY --from=builder /app/.venv /app/.venv
COPY --from=builder /app/app /app/app
ENV PATH="/app/.venv/bin:$PATH"
ENV PYTHONUNBUFFERED=1
EXPOSE 8000
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]