Open WebUI — это удобный интерфейс чата для моделей, доступ к которым предоставляется через API. С его помощью можно общаться с AI-агентами в привычном формате диалога.
Разберемся, как установить Open WebUI и подключить к нему AI-агента.
Предполагается, что у вас уже создан AI-агент. Если нет, поможет наша документация, где подробно описано, что такое агент и как его создать.
Установка
Интерфейс можно развернуть как локально на рабочем компьютере, так и на удаленном сервере, если нужен постоянный доступ к чату.
Для корректной работы Open WebUI потребуется минимум 2 ГБ ОЗУ.
Убедитесь, что у вас установлены docker и docker compose:
docker --version docker compose version
Если вы разворачиваете Open WebUI локально, достаточно создать файл docker-compose.yaml с содержимым:
services:
openwebui:
image: ghcr.io/open-webui/open-webui:main
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
volumes:
open-webui:
Если вы хотите развернуть интерфейс на сервере, для удобства доступа стоит использовать домен и SSL-сертификат. Для этого создайте файл .env:
DOMAIN=openwebui.example.com
LETSENCRYPT_EMAIL=admin@example.com
TZ=Europe/Moscow
В DOMAIN укажите домен, на котором будет работать интерфейс. Для домена должна быть настроена A-запись на ваш сервер.
LETSENCRYPT_EMAIL — почтовый ящик, который будет использоваться для получения сертификата.
TZ — таймзона.
Создайте файл docker-compose.yaml со следующим содержимым:
version: "3.8"
services:
traefik:
image: traefik:v3.1
container_name: traefik
restart: unless-stopped
command:
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--certificatesresolvers.myresolver.acme.httpchallenge=true"
- "--certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web"
- "--certificatesresolvers.myresolver.acme.email=${LETSENCRYPT_EMAIL}"
- "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "letsencrypt:/letsencrypt"
openwebui:
image: ghcr.io/open-webui/open-webui:main
container_name: openwebui
restart: unless-stopped
environment:
- TZ=${TZ}
- WEBUI_URL=https://${DOMAIN}
volumes:
- openwebui-data:/app/backend/data
labels:
- "traefik.enable=true"
# HTTPS-роутер
- "traefik.http.routers.openwebui.rule=Host(`${DOMAIN}`)"
- "traefik.http.routers.openwebui.entrypoints=websecure"
- "traefik.http.routers.openwebui.tls.certresolver=myresolver"
- "traefik.http.services.openwebui.loadbalancer.server.port=8080"
- "traefik.http.services.openwebui.loadbalancer.server.scheme=http"
# HTTP-роутер с редиректом на HTTPS
- "traefik.http.routers.openwebui-http.rule=Host(`${DOMAIN}`)"
- "traefik.http.routers.openwebui-http.entrypoints=web"
- "traefik.http.routers.openwebui-http.middlewares=redirect-to-https"
# Middleware для редиректа
- "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
volumes:
openwebui-data:
letsencrypt:
Сохраните манифест и запустите контейнер:
docker compose up
Docker скачает образ и развернет Open WebUI. После появления логотипа в терминале откройте в браузере страницу http://localhost:3000/ или используйте ваш домен, если интерфейс разворачивается на сервере (в дальнейшем в инструкции будем использовать localhost).

Если загрузилась приветственная страница — установка прошла успешно.

Вернитесь в терминал и остановите контейнер сочетанием Ctrl+C, а затем запустите его в фоновом режиме:
docker compose up -d
В браузере обновите страницу http://localhost:3000/, вы также должны наблюдать приветственную страницу.
Подключение агента
Нажмите на кнопку «Давайте начнем».
Заполните данные для создания аккаунта администратора. Если приложение разворачивается локально, можно указать простой пароль, но при установке на сервере с внешним доступом рекомендуем использовать стойкий пароль. Почта, введенная при регистрации, используется только как идентификатор и как логин для входа, никакие письма на нее не приходят.

Open WebUI поддерживает два способа подключения агентов:
- Через прямое подключение — для каждого пользователя указывается собственный API-ключ и URL;
- Для всех пользователей — настройки подключения задаются один раз в панели администратора и используются по умолчанию.
Рассмотрим оба варианта.
После создания аккаунта вы окажетесь в главном рабочем пространстве. Но чтобы подключить агентов, нужно сделать еще пару шагов.
Нажмите на имя аккаунта в левом нижнем углу и выберите «Панель администратора».

Дальше откройте вкладку «Настройки» → пункт «Подключения» и включите переключатель напротив «Прямые подключения». Сохраните изменения.

Теперь перейдем к подключению модели. Вновь нажмите на имя пользователя, но теперь выберите пункт «Настройки».

Перейдите в раздел «Подключения» и нажмите на иконку плюсика.

В открывшемся меню укажите:
-
URL — значение из поля «OpenAI URL» во вкладке «Доступ» на странице агента в панели Timeweb Cloud;
После этого нажмите на кнопку проверки соединения. Если ошибок нет — сохраните.

Закройте окно с настройками и нажмите на кнопку «Новый чат». В меню выбора модели у вас отобразится модель вашего AI-агента. Если этого не произошло — обновите страницу браузера и проверьте вновь.

На этом установка и настройка Open WebUI завершена.