Перейти к содержимому

Решения · Чат-интерфейс

VPS для Open WebUI

Open WebUI это самостоятельно размещаемый чат-интерфейс для Ollama и любого OpenAI-совместимого API: учётные записи, история, документы и веб-поиск в одной вкладке браузера. Минимальных требований к оборудованию проект не публикует, поэтому размеры здесь наши и так и помечены. При подключении к размещённой модели это лёгкое приложение, и C2-4-80 за $37.90 более чем достаточно; со встроенной Ollama в память должна поместиться ещё и модель, и BD-8 за $12.90 это самая дешёвая машина, которая вмещает модель 8B с запасом.

Что нужно

Программы по документации, размеры с указанием источника

Программы и настройки безопасности взяты из официальной документации проекта. Если проект не публикует требований к оборудованию, у размеров указано, чьи это рекомендации.

По README Open WebUI и docs.openwebui.com

  • Установка через Docker: docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main Интерфейс слушает порт 8080 внутри контейнера; в документации он сопоставлен с портом 3000 на хосте.
  • Входит ли Ollama? Только в образ :ollama, который объединяет оба в одном контейнере. Образ :main её не содержит: он подключается к Ollama или любому OpenAI-совместимому API, который вы укажете через OLLAMA_BASE_URL.
  • Образ весит 1.66 GB, а модель эмбеддингов по умолчанию для поиска по документам занимает около 500 MB RAM на каждый воркер. Документация не публикует минимальных требований к ЦП, RAM или диску.
  • Всё, что вы создаёте, хранится в томе /app/backend/data; документация предупреждает никогда не запускать без него. Первая созданная учётная запись становится администратором, и после её появления регистрация закрывается.

Размеры (наши: документация не публикует минимума)

Подбор размера по задаче
НагрузкаvCPURAM
Open WebUI с размещённым API или отдельной OllamaНаша оценка. Образ, приложение и модель эмбеддингов для поиска по документам помещаются с запасом; несколько пользователей в чате.24 GB
Open WebUI со встроенной Ollama и моделью 8BНаша оценка. Модель 8B весит 4.9 GB и должна поместиться в память рядом с приложением. Несколько токенов в секунду на ЦП.48 GB
Встроенная Ollama с моделью 14B или несколько человек одновременноНаша оценка. Модель 14B весит 9.3 GB; остальное: память для приложения, его модели эмбеддингов и одновременных чатов.824 GB

Подходящие тарифы

Машин: 4, цены актуальные

Сначала самая дешёвая подходящая машина. Цены текущие, за месяц, из каталога.

  • C2-4-80$37.90/мес.

    2 vCPU · 4 GB · диск 80 GB · 3 TB

    Только размещённые модели: лёгкая установка. 2 vCPU / 4 GB / 80 GB. Open WebUI с ключом API или с Ollama в другом месте. Выбирайте его ради города, а не ради размера.

  • BD-8$12.90/мес.

    4 vCPU · 8 GB · диск 100 GB · 32 TB

    Самый дешёвый вариант с местом для встроенной Ollama и модели 8B. 4 vCPU, 8 GB, 100 GB для образа и загружаемых моделей. Вдвое больше памяти, чем в лёгкой установке, для модели.

  • C4-8-160$75.90/мес.

    4 vCPU · 8 GB · диск 160 GB · 3 TB

    Та же конфигурация со 160 GB, в большем числе городов. 4 vCPU / 8 GB / 160 GB, если города самой дешёвой строки вам не подходят или нужна библиотека моделей побольше.

  • BD-24$31.90/мес.

    8 vCPU · 24 GB · диск 300 GB · 32 TB

    8 vCPU / 24 GB для моделей 14B и команды. Модель 14B и несколько одновременных чатов, с диском для библиотеки документов.

Пресета скрипта запуска для Open WebUI пока нет: установка состоит из четырёх шагов ниже, которые вы вводите сами. Это команды из его собственной документации с одним помеченным изменением.

Установка

Четыре шага по документации Open WebUI

Docker, контейнер, учётная запись администратора, затем модель. Выполните шаг 3 сразу: первая созданная учётная запись становится администратором.

  1. Docker. curl -fsSL https://get.docker.com | sh Проверьте командой docker --version.
  2. Создайте секретный ключ и запустите. Выполните openssl rand -hex 32 и сохраните вывод; в документации он передаётся как WEBUI_SECRET_KEY. Наше единственное изменение в их команде: 127.0.0.1:3000:8080 не пускает порт в публичный интернет, пока у вас нет HTTPS. docker run -d -p 127.0.0.1:3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data -e WEBUI_SECRET_KEY=your-secret-key --name open-webui --restart always ghcr.io/open-webui/open-webui:main Для встроенной Ollama замените образ на ghcr.io/open-webui/open-webui:ollama и добавьте -v ollama:/root/.ollama.
  3. Сразу создайте администратора. На своём ноутбуке выполните ssh -N -L 3000:127.0.0.1:3000 root@your-server, затем откройте http://127.0.0.1:3000. Первый экран предлагает Create Admin Account; эта учётная запись управляет всеми настройками, а регистрация после её создания отключается сама.
  4. Подключите модель, затем домен. В Admin settings, раздел Connections: добавьте ключ OpenAI-совместимого API или адрес вашей Ollama. Для Ollama на том же хосте README предписывает использовать --network=host с -e OLLAMA_BASE_URL=http://127.0.0.1:11434; тогда порт становится 8080. Для HTTPS поставьте перед приложением обратный прокси и задайте proxy_buffering off; в его блоке location, иначе потоковые ответы будут приходить искажёнными.

Откровенно

Что купили бы мы сами

Проект не называет минимума, поэтому выбирайте машину под модель, а не под интерфейс.

Для Open WebUI с собственной Ollama

BD-8 · $12.90/мес.

4 vCPU, 8 GB и 100 GB за $12.90: образ размером 1.66 GB, эмбеддер и модель 8B в памяти рядом с ними, которая отвечает на ЦП со скоростью несколько токенов в секунду. Это подходит одному человеку или небольшой команде, готовым подождать, но не залу ожидающих людей. Если все ваши модели размещены у провайдера, C2-4-80 за $37.90 даёт тот же интерфейс дешевле. Если людям нужны быстрые локальные ответы, честный ответ: линейка GPU, и образ :cuda собран именно для неё.

Вопросы

Что спрашивают перед покупкой.

Каковы системные требования Open WebUI?
Проект их не публикует: ни README, ни краткое руководство, ни руководство по производительности не указывают минимума для ЦП, RAM или диска. Зато там сказано, что образ :main весит 1.66 GB (176 MB для образа :slim, в котором нет встроенного стека машинного обучения), а модель эмбеддингов по умолчанию для поиска по документам занимает около 500 MB RAM на каждый процесс-воркер. Размеры на этой странице наши, выведенные из этих цифр и из модели, которую вы решите запускать рядом.
Входит ли Ollama в Open WebUI?
Только если вы об этом попросите. Образ :ollama объединяет Open WebUI и Ollama в одном контейнере, который запускается со вторым томом для моделей. Образ :main её не содержит: он подключается к Ollama, запущенной в другом месте или на той же машине, и к любому OpenAI-совместимому API, например у провайдеров моделей или vLLM. На нашей странице об Ollama сторона модели подобрана по объёму RAM.
Какой порт он использует?
Приложение слушает порт 8080 внутри контейнера, а в документации он публикуется как 3000 на хосте с помощью -p 3000:8080. Если для доступа к Ollama на той же машине вы используете --network=host, порт будет 8080. Держите его на loopback и пользуйтесь SSH-туннелем, пока не создана учётная запись администратора и перед приложением не настроен HTTPS, потому что первая созданная учётная запись становится администратором.
Нужен ли GPU?
Для самого Open WebUI не нужен: это веб-приложение. GPU важен только для модели: образ :cuda запускает её на карте Nvidia, а без неё встроенная или отдельная Ollama отвечает на ЦП, медленно. Если модели размещены у провайдера и доступны по ключу API, GPU вообще не участвует.
Где мои данные и как обновиться?
В томе, смонтированном в /app/backend/data: чаты, пользователи и настройки, по умолчанию в SQLite. Документация требует никогда не запускать без него. Для обновления загрузите новый образ, удалите контейнер и снова выполните ту же команду с тем же томом и тем же секретным ключом. Когда приложением одновременно пользуется много людей, документация рекомендует PostgreSQL.
Сколько человек может обслужить один VPS?
Документация не называет числа. Но в ней сказано, что настройки по умолчанию рассчитаны на личное использование: SQLite в качестве базы данных, локальное векторное хранилище, небезопасное при нескольких воркерах, и модель эмбеддингов, загружаемая в само приложение. Для загруженной команды документация рекомендует PostgreSQL, Redis и внешний сервис эмбеддингов, а вынос эмбеддингов с машины освобождает сотни мегабайт на каждый воркер.
Open WebUI, Dify или AnythingLLM?
Open WebUI это чат-интерфейс: модели подключаете вы, а он даёт людям в браузере учётные записи, историю, документы и инструменты. Dify это платформа для создания LLM-приложений и рабочих процессов, а у AnythingLLM собственный подход к чату с документами. Все три работают на машинах одного типа, и у каждого здесь есть своя страница с собственными требованиями.