🔄 Обновление Open WebUI
Почему мой Open WebUI не обновляется?
Чтобы обновить вашу локальную установку Docker Open WebUI до последней доступной версии, вы можете использовать Watchtower или вручную обновить контейнер. Воспользуйтесь описанными ниже шагами для обновления вашего существующего изображения Open WebUI.
Ручное обновление
-
Остановите и удалите текущий контейнер:
Это остановит работающий контейнер и удалит его, но не удалит данные, сохраненные в томе Docker. (Замените
open-webui
на имя вашего контейнера в процессе обновления, если оно отличается.)
docker rm -f open-webui
-
Скачайте последнее Docker изображение:
Это обновит изображение Docker, но не обновит работающий контейнер или его данные.
docker pull ghcr.io/open-webui/open-webui:main
Удалите существующие данные в томе Docker (НЕ РЕКОМЕНДУЕТСЯ, ЕСЛИ ЭТО НЕ АБСОЛЮТНО НЕОБХОДИМО!). Полностью пропустите этот шаг, если он не требуется, и перейдите к последнему шагу:
Если вы хотите начать с чистого листа, вы можете удалить существующие данные в томе Docker. Будьте осторожны, так как это удалит всю вашу историю общения и другие данные.
Данные хранятся в томе Docker под названием open-webui
. Вы можете удалить их с помощью следующей команды:
docker volume rm open-webui
-
Заново запустите контейнер с обновленным изображением и прикрепленным существующим томом:
Если вы не удаляли существующие данные, это запустит контейнер с обновленным изображением и существующими данными. Если вы удалили существующие данные, это запустит контейнер с обновленным изображением и новым, пустым томом. Для поддержки Nvidia GPU добав ьте
--gpus all
к команде docker run
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main
Постоянно выходит из системы после каждого обновления?
Если после каждого обновления вас принудительно выход ит из системы, убедитесь, что WEBUI_SECRET_KEY
установлен в ваших переменных окружения. Без этого ключа ваши сессии аутентификации могут быть аннулированы после обновлений.
Чтобы установить WEBUI_SECRET_KEY
постоянно, добавьте его при запуске вашего контейнера Docker:
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui -e WEBUI_SECRET_KEY=your_secret_key ghcr.io/open-webui/open-webui:main
Или, если вы используете docker-compose, добавьте его в раздел environment
:
version: '3'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
environment:
- WEBUI_SECRET_KEY=your_secret_key
Для получения дополнительных сведений о настройках переменных окружения ознакомьтесь с документацией Open WebUI по переменным безопасности.
Автоматическое обновление Open WebUI с помощью Watchtower
Вы можете использовать Watchtower для автоматизации процесса обновления Open WebUI. Вот три варианта:
Вариант 1: Одноразовое обновление
Вы можете запустить Watchtower для одноразового обновления, чтобы остановить текущий контейнер, скачать последнее изображение и запустить новый контейнер с обновленным изображением и прикрепленным существующим томом (Для поддержки Nvidia GPU добавьте --gpus all
к команде docker run):
docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui
Вариант 2: Запуск Watchtower как отдельного контейнера
Вы можете запустить Watchtower в виде отдельного контейнера, который будет следить за вашим контей нером Open WebUI и обновлять его:
docker run -d --name watchtower \
--volume /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower -i 300 open-webui
Это запустит Watchtower в режиме отсоединения, который будет проверять обновления для вашего контейнера Open WebUI каждые 5 минут.
Вариант 3: Интеграция Watchtower с файлом docker-compose.yml
Вы также можете интегрировать Watchtower с вашим файлом docker-compose.yml
для автоматического обновления Open WebUI (Для поддержки Nvidia GPU добавьте --gpus all
к команде docker run):
version: '3'
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
watchtower:
image: containrrr/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --interval 300 open-webui
depends_on:
- open-webui
volumes:
open-webui:
В этом примере Watchtower интегрируется с файлом docker-compose.yml
и проверяет обновления для контейнера Open WebUI каждые 5 минут.
Постоянные данные в томах Docker
Данные хранятся в томе Docker под названием open-webui
. Путь к тому напрямую недоступен, но вы можете изучить том с помощью следующей команды:
docker volume inspect open-webui
Это покажет вам детали тома, включая точку монтирования, которая обычно находится в /var/lib/docker/volumes/open-webui/_data
.
На Windows 10 + WSL 2 тома Docker расположены здесь (введите в проводнике Windows):
- \\wsl$\docker-desktop\mnt\docker-desktop-disk\data\docker\volumes
Для более старых версий Docker (до Docker v26.1.4):
- \\wsl$\docker-desktop-data\data\docker\volumes
- \\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes
(Ответ для Windows взят у пользователя StackOverflow sarye-haddadi; ссылка на оригинальную публикацию на SO)