From 3f1ccfdbfe278722bb7d1563bc4132b2ed56e8f3 Mon Sep 17 00:00:00 2001 From: KofK Date: Sun, 16 Feb 2025 18:07:38 +0300 Subject: [PATCH] fix: deploy --- Dockerfile | 13 ++++--------- docker-compose.yml | 26 +++++++++++++++++++++++++- main.py | 4 ++-- qdrant/Dockerfile | 3 +++ 4 files changed, 34 insertions(+), 12 deletions(-) create mode 100644 qdrant/Dockerfile diff --git a/Dockerfile b/Dockerfile index 124b4cf..abd2136 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,14 +9,9 @@ RUN apt-get update && \ # Рабочая директория WORKDIR /app -# Сначала копируем только зависимости -COPY requirements.txt . - -# Устанавливаем зависимости с кэшированием +# Копируем весь код и устанавливаем зависимости +COPY . . RUN pip install --no-cache-dir -r requirements.txt -# Копируем остальные файлы -COPY . . - -# Команда для запуска (замените на вашу) -CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] \ No newline at end of file +# Команда для запуска +CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] diff --git a/docker-compose.yml b/docker-compose.yml index 477f587..68744e7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,9 @@ version: "3.8" services: qdrant: - image: qdrant/qdrant + build: + context: ./qdrant + dockerfile: Dockerfile container_name: qdrant ports: - "6333:6333" @@ -10,6 +12,11 @@ services: volumes: - qdrant_data:/qdrant/storage restart: unless-stopped + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:6333/collections"] + interval: 10s + timeout: 5s + retries: 5 backend: build: @@ -19,6 +26,12 @@ services: ports: - "8000:8000" restart: unless-stopped + depends_on: + qdrant: + condition: service_healthy + environment: + - QDRANT_HOST=qdrant + - QDRANT_PORT=6333 futa-clone: build: @@ -29,5 +42,16 @@ services: - "3000:3000" restart: unless-stopped + ollama: + image: ollama/ollama:latest + container_name: ollama + ports: + - "11434:11434" + volumes: + - ollama_data:/root/.ollama + restart: unless-stopped + volumes: qdrant_data: + ollama_data: + diff --git a/main.py b/main.py index e2cf5e0..4105f1e 100644 --- a/main.py +++ b/main.py @@ -38,8 +38,8 @@ logger = logging.getLogger(__name__) COLLECTION_NAME = "posts" VECTOR_SIZE = 1280 DATABASE_URL = "sqlite:///./imageboard.db" -QDRANT_URL = "http://localhost:6333" -OLLAMA_URL = "http://localhost:11434" +QDRANT_URL = "http://qdrant:6333" +OLLAMA_URL = "http://ollama:11434" EMBEDDING_MODEL = "nomic-embed-text" IMAGE_MODEL = "openai/clip-vit-base-patch32" IMAGE_SIZE = (224, 224) diff --git a/qdrant/Dockerfile b/qdrant/Dockerfile new file mode 100644 index 0000000..519367d --- /dev/null +++ b/qdrant/Dockerfile @@ -0,0 +1,3 @@ +FROM qdrant/qdrant + +RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*