Документация RelaxDev
Пошаговое руководство по использованию платформы. От создания проекта до настройки базы данных и привязки домена.
Что такое RelaxDev?
RelaxDev — это платформа, которая берёт на себя всю работу по настройке серверов, установке зависимостей и поддержанию работы вашего приложения.
Всё работает «под капотом»: вы просто импортируете код из репозитория, а мы автоматически определяем язык (Node.js, Python, React и т.д.), собираем проект и запускаем его в безопасной изолированной среде.
Быстрый старт (Краткий деплой)
Если у вашего проекта стандартные настройки, развернуть его можно всего в несколько кликов:
- Нажмите кнопку «Добавить проект».
- Выберите нужный репозиторий из подключенного аккаунта GitHub или GitLab.
- Оставьте включенным «Автоопределение стека» — система сама поймет, как собрать приложение.
- Нажмите «Деплой».
Через пару минут платформа завершит сборку, и ваш сайт будет доступен в сети!
Подробная настройка проекта
Для более сложных приложений в окне создания проекта доступно множество ручных настроек. Рассмотрим их по порядку:
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 начинает «задыхаться»: появляются задержки, очереди, ошибки таймаута.
PgBouncer работает как диспетчер: принимает все входящие запросы и распределяет их по ограниченному числу реальных соединений к базе. Остальные запросы ждут в очереди — не более заданного таймаута.
Одновременных подключений через пул. При превышении — ошибка сразу.
Реальных постоянных соединений PgBouncer к PostgreSQL. Чем больше — тем выше пропускная способность.
Секунд запрос ждёт свободное соединение. При превышении — ошибка клиенту.
Настройки применяются без редеплоя 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
Логи приложения в реальном времени. Незаменимый инструмент для поиска и исправления ошибок (дебага).
Авто-перезапуск
Если проект исчерпает доступную память, система автоматически перезапустит контейнер для восстановления работы.
Поддержка
В панели управления встроен полноценный чат поддержки.
- История: Вся история переписки сохраняется.
- Файлы: Вы можете прикреплять скриншоты логов или фрагменты кода прямо в чат.
- Мы всегда готовы помочь разобраться с ошибками сборки, базами данных и настройкой окружения.