Документация RelaxDev

Пошаговое руководство по использованию платформы. От создания проекта до настройки базы данных и привязки домена.

Что такое RelaxDev?

RelaxDev — это платформа, которая берёт на себя всю работу по настройке серверов, установке зависимостей и поддержанию работы вашего приложения.

Всё работает «под капотом»: вы просто импортируете код из репозитория, а мы автоматически определяем язык (Node.js, Python, React и т.д.), собираем проект и запускаем его в безопасной изолированной среде.

Быстрый старт (Краткий деплой)

Если у вашего проекта стандартные настройки, развернуть его можно всего в несколько кликов:

  1. Нажмите кнопку «Добавить проект».
  2. Выберите нужный репозиторий из подключенного аккаунта GitHub или GitLab.
  3. Оставьте включенным «Автоопределение стека» — система сама поймет, как собрать приложение.
  4. Нажмите «Деплой».

Через пару минут платформа завершит сборку, и ваш сайт будет доступен в сети!

Подробная настройка проекта

Для более сложных приложений в окне создания проекта доступно множество ручных настроек. Рассмотрим их по порядку:

1Выбор команды

Выберите рабочую область (Team), к которой будет привязан проект. Это полезно для разделения личных проектов и командной работы.

2Репозиторий и Ветка

Укажите нужный репозиторий с исходным кодом и ветку (по умолчанию main или master). Вы можете деплоить и затем менять в настройках любые(например, test).

3Название проекта

Задайте понятное имя. Оно будет использоваться в панели управления и может служить основой для временного домена.

4Настройка стека (Сборка)

Автоопределение: Платформа сама подберет команды для запуска (рекомендуется).
Свой Dockerfile: Выберите эту опцию, если вашему приложению нужна специфическая среда выполнения, и у вас в репозитории есть готовый Dockerfile.

5Переменные окружения (.env)

Безопасное место для ваших секретных ключей, паролей от БД и токенов API. Вы можете добавить их вручную (Ключ - Значение).

6Публичный проект и Автодеплой

Публичный проект: Делает ваш проект видимым в общем каталоге платформы (отлично для демо и open-source).
Автодеплой: При включении, проект будет автоматически обновляться каждый раз, когда вы отправляете новые изменения (push) в выбранную ветку.

Базы данных PostgreSQL

PostgreSQL 17 разворачивается в один клик. Платформа сама создаёт кластер, генерирует доступы, шифрует пароли и прописывает DATABASE_URL в переменные окружения. Ручная настройка не требуется.

📥 Импорт данных

Вставьте URL существующей PostgreSQL-базы — платформа снимет дамп и развернёт структуру и данные в новом кластере автоматически. Подходит для переезда с Neon, Supabase, Railway и любого другого хостинга.

🔒 Изоляция по умолчанию

База доступна только внутри Docker-сети вашего проекта. Порт xxxx закрыт снаружи на уровне файрвола. Для подключения из DBeaver / DataGrip — обратитесь в поддержку.

⚡ Авто-подключение

DATABASE_URL автоматически встаёт в переменные окружения при создании БД и обновляется при изменении настроек пула. Ничего не нужно копировать вручную.

🇷🇺 Данные внутри РФ

Вся инфраструктура находится на серверах в России. Никаких внешних зависимостей от Neon, Supabase или Vercel Postgres — ваши данные не покидают страну и не зависят от доступности зарубежных сервисов.

Пул соединений — PgBouncer

Каждый запрос пользователя к вашему сайту создаёт соединение с базой данных. При росте трафика их число увеличивается — и PostgreSQL начинает «задыхаться»: появляются задержки, очереди, ошибки таймаута.

// Без пула (по умолчанию)
100 пользователей → 100 соединений к PostgreSQL
// С PgBouncer
200 пользователей → PgBouncer → 160 соединений к PostgreSQL

PgBouncer работает как диспетчер: принимает все входящие запросы и распределяет их по ограниченному числу реальных соединений к базе. Остальные запросы ждут в очереди — не более заданного таймаута.

Макс. клиентов

Одновременных подключений через пул. При превышении — ошибка сразу.

FREE100
PRO400
BUSINESSбез лимита
Соединений к БД

Реальных постоянных соединений PgBouncer к PostgreSQL. Чем больше — тем выше пропускная способность.

FREE50
PRO200
BUSINESS5 000
Таймаут ожидания

Секунд запрос ждёт свободное соединение. При превышении — ошибка клиенту.

FREE20 сек
PRO30 сек
BUSINESS60 сек
Как читать мониторинг соединений
● 25соединений сейчас — норма, база работает свободно
● 45из 50 — высокая нагрузка, стоит увеличить лимит или перейти на PRO
● 50 из 50 — упёрлись в лимит, новые запросы встают в очередь

Настройки применяются без редеплоя PgBouncer — мгновенно. После изменения DATABASE_URL обновляется автоматически. Для вступления в силу на стороне приложения требуется быстрый редеплой (~10 сек).

Redis

Управляемый Redis 7 — один контейнер на команду, подключается в один клик прямо из панели проекта.

Доступен на всех тарифах, включая FREE

⚡️ После подключения REDIS_URL автоматически появляется в переменных окружения проекта.

🔒 Каждая команда получает изолированный инстанс с отдельным паролем.

🔄 Поддерживает кэш, сессии, очереди, pub/sub и rate limiting.

📡 Для Socket.io с несколькими репликами: используйте Redis Pub/Sub адаптер — платформа уже обеспечивает подключение.

# Переменная добавляется автоматически

REDIS_URL=●●●●●●●●●●●●●●●●

Socket.io с несколькими репликами:

// Синхронизация реплик через Redis адаптер

import { createAdapter } from "@socket.io/redis-adapter"

import { createClient } from "redis"

const pub = createClient({ url: process.env.REDIS_URL })

const sub = pub.duplicate()

io.adapter(createAdapter(pub, sub))

Домены и SSL

Привязка домена полностью автоматизирована.

  • Добавьте ваш домен во вкладке «Домены» настроек проекта.
  • Пропишите A-запись, указывающую на IP-адрес нашего сервера, в панели вашего регистратора доменов.
  • Нажмите "Обновить SSL". RelaxDev сам перехватит трафик, сгенерирует бесплатный SSL-сертификат (Let's Encrypt) и настроит маршрутизацию.

Мониторинг ресурсов

Ваши проекты работают внутри изолированных виртуальных машин (VM). Мы предоставляем прозрачные инструменты для контроля за состоянием приложения:

CPU & RAM

Отслеживайте потребление процессора и памяти. Помогает вовремя заметить утечки памяти в коде.

Сеть (Net I/O)

График входящего и исходящего трафика для анализа активности пользователей.

Runtime Logs

Логи приложения в реальном времени. Незаменимый инструмент для поиска и исправления ошибок (дебага).

Авто-перезапуск

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

Поддержка

В панели управления встроен полноценный чат поддержки.

  • История: Вся история переписки сохраняется.
  • Файлы: Вы можете прикреплять скриншоты логов или фрагменты кода прямо в чат.
  • Мы всегда готовы помочь разобраться с ошибками сборки, базами данных и настройкой окружения.