Документация / Своя VM и свой сервер

Своя VM и свой сервер

Платформа — для разработки и превью. Нужны свои ресурсы и SSH — своя VM команды «+ Admin». Нужен продакшен с данными пользователей у себя — «Панель Prod»: ваш сервер, а управление, сборки и деплой — из этой панели.

Что выбрать

Платформа+ Admin · своя VMПанель Prod · свой сервер
Где работаетОбщие серверы платформыОтдельная VM команды на серверах платформыВаш сервер (x86_64, Ubuntu или Debian)
Для чегоРазработка, тесты, превьюПрепрод и рабочие проекты со своими ресурсамиПродакшен с данными ваших пользователей
РесурсыПо тарифу1–4 vCPU, 2–8 ГБ, 20–100 ГБ дискаСколько есть у сервера, лимиты тарифа не действуют
SSH—По вашему ключу, без rootСервер ваш — доступ ваш
БазыКластер команды, бэкапы, пул, внешний доступКластер команды на VM, бэкапы каждую ночьКластер на сервере, бэкапы — на вашей стороне
ЛогиХранятся 7 днейХранятся 7 днейНе передаются к нам — последние строки с сервера
Адреса проектов<имя>.relaxdev.ru<имя>.vm.relaxdev.ru<имя>.<ваш домен>
ЦенаПо тарифу500 ₽ – 4 000 ₽/мес к тарифу1 000 ₽/мес, с тарифом или без

Своя VM и «Панель Prod» бывают у команды одновременно: например, препрод на VM, а прод — на своём сервере.

Препрод и прод

Удобная схема: проект работает и проверяется на платформе или своей VM — это препрод, а продакшен живёт на вашем сервере через «Панель Prod». Логи, база и пользователи прода — у вас; сборки, деплой, домены и сертификаты — из той же панели.

Окружения — один проект в нескольких местах

  • В настройках проекта, блок «Окружения»: «Создать окружение» на своём сервере или своей VM. Появится экземпляр проекта <имя>-prod (или -vm) в той же команде.
  • У окружения свои переменные (адрес заменится на новый), своя база — пустая или копией данных на момент создания, свой Redis и свои домены.
  • В проекте окружения — вкладки над названием: «prod», «preprod» или своя подпись (меняется в настройках), без подписи — площадка: «Платформа», «VM · vm3».
  • «Выкатить» собирает в окружении тот же коммит, что сейчас работает в другом: проверили на препроде — выкатили в прод. Сборка идёт с переменными прода, поэтому NEXT_PUBLIC_* и прочие вшиваемые значения у каждого свои.
  • Автодеплой у окружения выключен: прод обновляется только выкаткой. У основного проекта автодеплой — как был.
  • Основной проект удаляется после своих окружений; удаление окружения основной не трогает.

Или перенести целиком

  • Проект без копии — в настройках проекта, блок «Своя VM или прод на своём сервере».
  • Всю свою VM в прод — страница VM → «Панель Prod» → «Перенести всю VM»: все проекты разом, базы копируются.
  • Если хоть одна сборка при переносе не пройдёт, всё вернётся на прежнее место — сайты не останутся без версии.

+ Admin — своя VM команды

Что внутри

  • 1–4 vCPU, 2–8 ГБ памяти, 20–100 ГБ диска — размер выбираете при заказе.
  • 250 ₽ за vCPU + 125 ₽ за ГБ памяти + 25 ₽ за ГБ диска сверх 20 ГБ, посуточно с баланса.
  • Новые проекты команды запускаются на VM; работающие переезжают из своих настроек вместе с базой.
  • Кластер PostgreSQL команды на VM: бэкапы каждую ночь (3 дня), внешний доступ по белому списку IP.
  • Надбавка к PRO, PRO Team или Business — отдельно не подключается.

SSH и консоль

  • Вход по вашему ключу без root: ssh -p 22NN c-логин@135.136.191.56 — команда в карточке VM.
  • Процессы VM, домашняя папка, git, свои утилиты в ~/bin, pip --user, файлы по scp, доступ в интернет.
  • Контейнеры, Traefik и сертификаты обслуживает платформа — их не сломать по неосторожности.
  • Консоль на странице VM: docker ps, stats, logs, перезапуск и остановка (владелец и редактор).

Панель Prod — свой сервер

Подключение

  • Сервер x86_64 с Ubuntu или Debian и публичным IPv4: открыт SSH, свободны порты 80 и 443.
  • Данные для входа по SSH — один раз: IP, порт, root или отдельный пользователь с sudo (например, relaxdev), пароль или ключ. Панель ставит Docker и Traefik и дальше входит своим ключом; ваши данные для входа не сохраняются.
  • Домен для адресов проектов, например apps.example.com, с A-записями apps.example.com и *.apps.example.com на IP сервера.
  • 1 000 ₽/мес с баланса посуточно; на балансе при подключении — месяц.

Данные у вас

  • Логи на платформу не передаются: в панели — последние строки прямо с сервера.
  • Дампы и бэкапы баз платформа не делает и не хранит — они остаются у вас.
  • Лимиты тарифа на сервере не действуют; можно вместе с основным тарифом или без него.
  • Отключили «Панель Prod» — сервер и проекты на нём остаются у вас.

Перенос

  • Проект — из его настроек: на свою VM или на свой сервер. Код пересобирается, база копируется и сверяется построчно, Redis начинается пустым, свои домены переезжают.
  • Вся VM в прод — страница VM → «Панель Prod» → «Перенести всю VM». Проекты переезжают разом: база и Redis у команды общие. Пока идёт перенос, сборки, перезапуски и новые проекты команды закрыты.
  • С изолятора — в два шага: через основной сервер и сразу на вашу площадку.
  • Сбой — откат сам: прежние площадка, переменные и адреса. Если проект успел поработать на своём сервере, его база там не стирается, а остаётся под именем <база>_rb_<дата>.
  • Автодеплой на время переноса выключается и сам не включается — включите его, когда проверите работу на новом месте.

Домены и адреса

Своя VM

  • Своего IP у VM нет — она за общим входом платформы 135.136.191.56.
  • Адрес <имя>.vm.relaxdev.ru выдаётся сам.
  • Свой домен — A-запись на 135.136.191.56 во вкладке «Домены», сертификат выпустится сам.
  • По голому IP сайт не открыть: вход различает проекты по имени домена.

Свой сервер

  • Домен при подключении — только для технических адресов проектов <имя>.<домен> с HTTPS.
  • Свои домены сайтов — во вкладке «Домены», A-записью на IP сервера.
  • По голому IP сайты не открываются: проектов несколько, сервер различает их по имени домена.

Базы данных

  • У команды один кластер PostgreSQL и один Redis — они работают там же, где проекты команды.
  • На своей VM: бэкапы каждую ночь (хранятся 3 дня) и вручную, внешний доступ по белому списку IP.
  • На своём сервере: порт базы открывается на самом сервере, бэкапы — на вашей стороне.
  • Пока недоступны на VM и сервере: пул PgBouncer, импорт базы по ссылке, DataLens, сборка с доступом к БД.

С чего начать