Open WebUI на своём сервере: интерфейс как у ChatGPT, но ваш

Open WebUI — это веб-интерфейс для работы с моделями ИИ. Внешне похож на ChatGPT, но живёт на вашем сервере: переписки, загруженные документы и настройки остаются у вас.

Что понадобится

  • Сервер с Ubuntu 22.04 или новее, минимум 2 ГБ оперативной памяти
  • Docker — ставится одной командой
  • Ключ API от модели или локальная модель на том же сервере
  • 15 минут

Шаг 1. Установить Docker

Подключитесь к серверу по SSH и выполните:

curl -fsSL https://get.docker.com | sh

Проверка: команда docker --version должна вернуть номер версии, а не ошибку.

Шаг 2. Запустить Open WebUI

docker run -d -p 3000:8080 
  -v open-webui:/app/backend/data 
  --name open-webui 
  --restart always 
  ghcr.io/open-webui/open-webui:main

Флаг -v open-webui:/app/backend/data сохраняет данные между перезапусками. Без него переписки исчезнут при обновлении контейнера.

Шаг 3. Открыть и создать администратора

Откройте http://ВАШ_IP:3000. Первый зарегистрированный пользователь получает права администратора — сделайте это сразу, иначе это может сделать кто-то другой.

Шаг 4. Подключить модель

В настройках администратора → Connections укажите адрес модели:

  • API-провайдер — вставьте ключ и базовый адрес API
  • Локальная модель — если на этом же сервере работает Ollama, адрес будет http://host.docker.internal:11434

Шаг 5. Закрыть доступ извне

Порт 3000 не должен быть открыт в интернет без авторизации. Минимально — закройте его фаерволом и работайте через VPN-подключение к серверу.

ufw allow 22/tcp
ufw allow 3000/tcp
ufw enable

Типичные ошибки

  • Порт занят — смените левую часть в -p 3000:8080 на свободный, например 3001
  • Не подключается модель — проверьте, что контейнер видит хост: для Ollama нужен --add-host=host.docker.internal:host-gateway
  • После перезагрузки сервера всё пропало — не был указан --restart always

Куда дальше

Интерфейс работает — значит комплекс собирается. Следующий шаг — подключить модель и раздать доступ через VPN, если сервис обращается к внешним API.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *