Railway — удобная PaaS-платформа для разработчиков: git push → приложение задеплоено, переменные окружения через UI, базы данных в один клик, метрики из коробки. Для российских разработчиков у неё две проблемы: оплата требует иностранной карты, а постоянного бесплатного тарифа нет — после пробного периода нужен платный план. Ниже — что реально работает в России и как не потерять данные при переезде.
Почему Railway сложен для России
Railway открывается из России, но:
- Оплата: только карты зарубежных банков.
- Цена: бесплатного тарифа без ограничений нет; актуальные условия смотрите на сайте Railway — они меняются.
- Данные: серверы за рубежом. Если вы обрабатываете персональные данные россиян, 152-ФЗ требует первичной записи и хранения их в России.
Для проектов без требований к локализации данных и с иностранной картой Railway по-прежнему хороший вариант. Для остальных — альтернативы ниже.
Amvera — ближайший российский аналог Railway
Amvera — российская PaaS-платформа с git-деплоем. Концептуально похожа на Railway: пуш в репозиторий → автоматическая сборка → деплой. Проект можно создать в веб-интерфейсе и подключить GitHub/GitLab или пушить напрямую в git-репозиторий Amvera.
Как работает деплой
# 1. Создайте проект в личном кабинете Amvera
# 2. Добавьте удалённый репозиторий (адрес показан в кабинете)
git remote add amvera https://git.amvera.ru/ваш-логин/my-app
# 3. Деплой
git push amvera main
# → Amvera соберёт образ и запустит приложение
Настройка через amvera.yml
Конфигурация лежит в корне проекта. Пример для Docker-сборки (формат полей сверяйте с документацией Amvera — он обновляется):
meta:
environment: docker
toolchain:
name: docker
version: latest
build:
dockerfile: Dockerfile
skip: false
run:
persistenceMount: /data # постоянное хранилище: всё, что вне него, теряется при пересборке
containerPort: 3000
Важный момент: файлы, которые приложение пишет вне постоянного хранилища, пропадают при каждой пересборке. SQLite-базу держите в /data.
Пример: Next.js на Amvera
FROM node:22-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
FROM node:22-alpine AS runner
WORKDIR /app
ENV NODE_ENV=production
COPY --from=builder /app/package*.json ./
RUN npm ci --omit=dev
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/public ./public
EXPOSE 3000
CMD ["npm", "start"]
После git push amvera main приложение получает домен Amvera; свой домен подключается в настройках проекта.
Базы данных в Amvera
Amvera предлагает управляемые базы данных (PostgreSQL и другие) — подключение через переменные окружения в UI. Тарифы и цены смотрите на сайте Amvera: они зависят от ресурсов. Оплата российскими картами и по счёту.
Coolify — self-hosted Railway на своём VPS
Coolify — open-source платформа деплоя, которую вы разворачиваете на собственном VPS. Это Railway/Heroku, где сервер ваш: платите только за VPS, не за платформу.
Установка на VPS (Ubuntu)
# Минимум по документации Coolify: 2 CPU, 2 GB RAM, 30 GB диска
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash
# После установки: открыть http://ВАШ_IP:8000
# → создать аккаунт администратора
# → добавить сервер (localhost или удалённый по SSH)
Деплой Next.js из GitHub
В Coolify UI:
- New Resource → Application → GitHub (подключить GitHub App).
- Выбрать репозиторий и ветку
main. - Сборка определяется автоматически (Nixpacks) или по вашему Dockerfile.
- Environment Variables → добавить
DATABASE_URL,NEXTAUTH_SECRET. - Deploy.
Дальше Coolify пересобирает приложение при push в ветку, выпускает SSL-сертификат Let's Encrypt и при настроенном healthcheck переключает трафик на новый контейнер только после успешного старта.
Дополнительные сервисы в Coolify
Через UI можно запустить PostgreSQL, MySQL, MariaDB, MongoDB, Redis, а также десятки готовых сервисов из каталога: PocketBase, MinIO, Umami, Plausible, Uptime Kuma и другие. Сервисы получают внутренние имена в Docker-сети (например, postgresql://postgres:pass@postgresql:5432/myapp).
Coolify vs Railway
| Параметр | Coolify (self-hosted) | Railway | |---|---|---| | Цена | Только VPS | Платный план после пробного периода | | Оплата | Российские карты (за VPS) | Иностранные карты | | DevOps-нагрузка | Обслуживание VPS | Нет | | Данные в России | Да, если VPS в России | Нет | | Базы данных | Вы администрируете сами | Управляет Railway | | Метрики | Базовые | Продвинутые | | Масштабирование | Вручную (апгрейд VPS) | Настройками платформы |
Timeweb Cloud — гибридный подход
Timeweb Cloud — российский облачный провайдер. Что есть:
- Apps — PaaS для приложений (git-деплой, Docker, автосборка);
- Managed Kubernetes;
- управляемые PostgreSQL/MySQL/Redis;
- S3-совместимое объектное хранилище.
Деплой в Apps: создать приложение в панели, подключить GitHub-репозиторий, указать команды сборки (npm run build) и запуска (npm start), добавить переменные окружения. Дальше — автодеплой при push.
Плюсы: российское юрлицо, оплата по счёту и картой, русскоязычная поддержка, дата-центры в России. Цены — на сайте провайдера.
Яндекс Cloud Serverless: функции и контейнеры
Если проект можно упаковать в stateless-контейнер — подойдут Yandex Serverless Containers.
yc serverless container create --name my-next-app
# Загрузка образа в Yandex Container Registry
docker tag my-app cr.yandex/<registry-id>/my-app:latest
docker push cr.yandex/<registry-id>/my-app:latest
# Деплой ревизии
yc serverless container revision deploy \
--container-name my-next-app \
--image cr.yandex/<registry-id>/my-app:latest \
--cores 1 --memory 512m \
--concurrency 10 \
--service-account-id <sa-id>
Плюсы: автомасштабирование, оплата за фактическое использование. Минусы: настройка сложнее, а локальный диск контейнера не подходит для базы — данные нужно держать в управляемой БД.
Выбор по сценарию
| Сценарий | Рекомендация | |---|---| | MVP, нужно быстро | Amvera — git push и готово | | Полный контроль, минимальный бюджет | Coolify на VPS Timeweb/Selectel | | Корпоративный проект, 152-ФЗ | Yandex Cloud или Cloud.ru | | Несколько проектов на одном сервере | Coolify | | Хакатон/демо | Amvera или бесплатный тариф Vercel | | Команда с DevOps | Managed Kubernetes (Timeweb/Yandex) |
Где живут данные и как их бэкапить
На PaaS код восстанавливается из git за минуты, а база — нет. Поэтому до переезда разберитесь, где у вас лежат данные:
- Railway: PostgreSQL/MySQL-сервисы и volumes внутри проекта. Снимки томов Railway хранятся там же, у того же провайдера, — это защита от ошибок, но не внешняя копия.
- Amvera: управляемая БД или файлы в постоянном хранилище (
/data), включая SQLite. - Coolify: базы — это Docker-контейнеры с томами на вашем VPS. Встроенные бэкапы Coolify умеют отправлять дампы в S3, но настраивать их нужно самому — подробно в статье бэкап БД в Docker и Coolify.
Минимальная схема для любой из платформ: дамп по расписанию → копия в другое место (не к тому же провайдеру) → регулярная проверка восстановления.
# PostgreSQL: дамп перед деплоем или по cron
pg_dump --format=plain "$DATABASE_URL" > /tmp/pre-deploy.sql
dbsend backup /tmp/pre-deploy.sql \
-d "$DBSEND_DATABASE_ID" \
-e postgresql_dump \
-l "pre-deploy-$(git rev-parse --short HEAD)"
dbsend log "$DBSEND_DATABASE_ID"
Если не хотите сервис, отправляйте тот же дамп в S3 Yandex Object Storage или Selectel — пошагово в статье pg_dump по cron в S3. Для SQLite в /data используйте sqlite3 app.db ".backup '/tmp/app.db'", а не cp — см. как сделать бэкап SQLite.
Раз в месяц поднимайте дамп в пустую базу и сверяйте число строк в ключевых таблицах — чек-лист в статье как проверить, что бэкап рабочий. dbsend здесь добавляет версии, diff схемы между ними и алерты, если бэкап не пришёл по расписанию: бэкапы PostgreSQL в dbsend.
Частые вопросы
Есть ли бесплатный аналог Railway в России?
Полностью бесплатного PaaS с постоянным хранилищем в России практически нет. Самый дешёвый вариант — Coolify на недорогом VPS: сам Coolify бесплатный, платите только за сервер. Для российской аудитории берите VPS в российском дата-центре (Timeweb, Selectel и другие).
Поддерживает ли Amvera автодеплой из GitHub?
Да, Amvera умеет подключать репозиторий GitHub/GitLab и пересобирать приложение при push в выбранную ветку. Также можно пушить напрямую в git-репозиторий Amvera.
Сложно ли управлять Coolify?
Проще, чем Kubernetes или Docker Compose вручную. Если вы понимаете Docker и переменные окружения, базовую настройку освоите быстро. Основные заботы: обновления Coolify, свободное место на диске VPS и бэкапы баз — их Coolify сам за вас не включит.
Работает ли Railway из России без VPN?
Сайт и задеплоенные приложения обычно доступны. Основная проблема — оплата: нужна карта зарубежного банка.
Как мигрировать с Railway на Amvera?
Экспортируйте переменные окружения из Railway (Settings → Variables). Создайте amvera.yml с аналогичными настройками. Снимите дамп базы: pg_dump "$DATABASE_URL" | gzip > backup.sql.gz (для доступа снаружи используйте публичный URL базы из настроек Railway). Создайте базу в Amvera и восстановите дамп через gunzip -c backup.sql.gz | psql -v ON_ERROR_STOP=1 "$NEW_DATABASE_URL". Добавьте remote Amvera, сделайте push и переключите DNS. Подробнее про восстановление — в статье как восстановить базу из бэкапа.



