Установка на свой сервер

Требования к серверу, установка одной командой, первый вход по PIN и состав разделов.

Rivo ставится на один VPS и целиком принадлежит владельцу: данные, ключи шифрования и резервные копии не покидают сервер. Короткая версия — на странице Установка.

Что нужно до установки

МинимумРекомендуется
ОСUbuntu 22.04 / 24.04, x86_64 (про arm64 — спросите на [email protected])Ubuntu 24.04
Процессор1 vCPU2 vCPU
ОЗУ1 ГБ2 ГБ
Диск5 ГБ свободно20–40 ГБ (база, документы, бэкапы)
Сетьпубличный IP, открытые порты 80 и 443
  • Порты 80 и 443 должны быть свободны — на них встаёт Caddy и сам выпускает HTTPS-сертификат. Если там уже работает nginx или apache, уберите его или задайте Rivo другие порты (HTTP_PORT, HTTPS_PORT) и проксируйте сами.
  • DNS. Заведите A-запись домена (например, rivo.example.com) на IP сервера до установки и дождитесь, пока она разойдётся (dig +short rivo.example.com). Без неё сертификат не выпустится.

Установка одной командой

curl -fsSL https://get.me.rivo.day/install.sh | sudo bash -s -- --domain rivo.example.com --email [email protected]

Установщик ставит Docker, скачивает готовые образы и разворачивает всё в /opt/rivo. Ничего не собирается на сервере — это занимает пару минут. Без флагов он сам спросит домен, почту и лицензионный ключ.

ПараметрЗачем
--license RIVO-…лицензионный ключ из кабинета. Необязателен: ключ можно ввести позже в Настройки → Лицензия
--version 1.4.2поставить конкретную версию, а не последнюю
--dir /opt/rivoдругой каталог установки
--yesничего не спрашивать (для автоматизации)
--no-scheduleне включать ежедневный бэкап
--registry-user U --registry-token Tдоступ к закрытому registry (выдаётся в кабинете)

Установщик сам генерирует секреты (APP_SECRET, VAULT_KEY, пароль базы) и случайный PIN входа — инстанс не остаётся открытым ни минуты. Схема базы создаётся при первом старте, ручных шагов нет. Повторный запуск безопасен: секреты, данные и версия не меняются.

Первый вход

В конце установщик печатает PIN — один раз:

  PIN входа: 481907  ← запиши сейчас, больше он нигде не покажется

Откройте https://ваш-домен и введите его. Дальше:

  1. Смените PIN на свой — Настройки → Доступ.
  2. Сохраните копию /opt/rivo/deploy/.env вне сервера (например, в менеджере паролей). Без APP_SECRET и VAULT_KEY загруженные файлы и пароли не расшифровать ничем — даже из бэкапа.
  3. Сохраните BACKUP_PASSPHRASE, который установщик напечатал в конце, — без него резервные копии не открываются.
  4. По необходимости: ключ LLM для ассистента, токен Telegram-бота, Google-календарь, валюта и часовой пояс.

Какие разделы включены

Состав разделов задаёт лицензия: тариф сменился — состав поменялся сам. Без лицензии включено всё. Урезать состав можно строкой MODULES=… в deploy/.env (через запятую), затем rivo restart; выключенный модуль скрыт в интерфейсе.

Если что-то не так

СимптомЧто делать
Сайт не открываетсяrivo logs caddy; проверьте A-запись и что 80/443 не закрыты файрволом (ufw allow 80,443/tcp)
Сертификат не выпускаетсяLet's Encrypt должен достучаться до сервера по 80-му порту; проверьте, что порт не занят другим веб-сервером
API в статусе unhealthyrivo logs api — чаще всего не поднялась база или не хватило памяти
не удалось скачать …registry закрыт: задайте --registry-user/--registry-token из кабинета

Забыли PIN

Сбросьте его в базе, впишите новый APP_PIN в /opt/rivo/deploy/.env и перезапустите стек:

cd /opt/rivo
docker compose -f deploy/docker-compose.yml --env-file deploy/.env exec -T db psql -U rivo -d rivo -c "DELETE FROM settings WHERE key='APP_PIN';"
rivo restart

Обновление и резервные копии — в статье Обновление, бэкап и восстановление.