From 4a8c7a06ac09d17831521defca56ced23055dada Mon Sep 17 00:00:00 2001 From: nafer Date: Mon, 23 Feb 2026 22:02:35 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20Dockerfile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index b3d555b..44a567e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,17 +2,18 @@ FROM langflowai/langflow:latest USER root -# Устанавливаем библиотеки СТРОГО внутрь виртуального окружения Langflow -# Это гарантирует, что версии не «разлетятся» -RUN /app/.venv/bin/python -m pip install --no-cache-dir -U \ - pydantic>=2.12.5 \ - langchain-core \ - langchain-openai \ - browser-use +# 1. Сначала обновляем pip +RUN /app/.venv/bin/python -m pip install --no-cache-dir --upgrade pip -# На всякий случай возвращаем права на папку окружения пользователю 1000 (стандарт для Docker) -# Это лечит проблемы с доступом, если они возникнут +# 2. Устанавливаем browser-use, но НЕ трогаем системные зависимости Langflow (pydantic и sqlmodel) +# Мы позволяем pip установить их, но на следующем шаге мы их "полечим" +RUN /app/.venv/bin/python -m pip install --no-cache-dir browser-use langchain-openai + +# 3. КРИТИЧЕСКИЙ ШАГ: Переустанавливаем Langflow поверх. +# Это заставит pip откатить несовместимые версии SQLAlchemy/SQLModel к тем, которые нужны Langflow. +RUN /app/.venv/bin/python -m pip install --no-cache-dir langflow --force-reinstall + +# 4. Исправляем права доступа (используем ID 1000, так как имени может не быть) RUN chown -R 1000:1000 /app/.venv -# Не используем USER langflow, так как в этом образе его нет. -# Оставляем root или просто не пишем USER — образ сам запустится от нужного ID. \ No newline at end of file +# Оставляем запуск от root или не указываем USER, чтобы Dokploy не ругался на отсутствие passwd \ No newline at end of file