Загружаем каталог…
Вы дописали проект, он работает локально, но показать его некому: ссылки нет. Railway закрывает этот разрыв.
Коротко: как задеплоить приложение на Railway — подключите GitHub-репозиторий через New Project → Deploy from GitHub repo, дайте доступ к нужному репо, дождитесь сборки, добавьте переменные окружения, при необходимости подключите базу данных, затем в настройках сервиса нажмите Generate Domain. Через минуту приложение доступно по публичному адресу.
Railway — облачная платформа, которая сама разбирается, что у вас в репозитории. Она читает файлы проекта, определяет язык и менеджер пакетов, ставит зависимости и запускает сборку без Dockerfile и без конфигов CI. Если в проекте есть Dockerfile, Railway использует его. База данных, кэш, воркер и сам бэкенд живут внутри одного проекта как отдельные сервисы, связанные общей приватной сетью, и переменные между ними подставляются ссылками, а не копипастой.
Подойдёт для Node.js, Python, Go, Ruby, PHP, Rust, статики и монорепозиториев. Слабая сторона: если приложению нужны хитрые системные пакеты или нестандартный рантайм, автосборка может не угадать, и придётся писать Dockerfile руками.
Подготовьте репозиторий. Убедитесь, что проект стартует одной командой, а порт берётся из переменной окружения PORT, а не жёстко прописан. Секреты — в .env, который лежит в .gitignore. Результат: репозиторий готов к автосборке, ничего лишнего в истории.
Создайте проект. В дашборде Railway нажмите New Project и выберите Deploy from GitHub repo. Установите приложение Railway в свой GitHub-аккаунт и откройте доступ к конкретному репозиторию. Результат: сервис создан, первая сборка запустилась автоматически.
Посмотрите логи сборки. Откройте вкладку с логами и дождитесь, пока билд перейдёт в статус деплоя. Здесь видно, какой рантайм определился и какая команда запуска подставилась. Результат: понятно, собралось приложение или упало и на каком шаге.
Задайте переменные окружения. В настройках сервиса откройте Variables и перенесите содержимое .env: ключи API, строки подключения, режим окружения. После сохранения сервис перезапустится сам. Результат: приложение видит свои секреты и не падает на старте.
Добавьте базу данных. Кнопкой New внутри проекта добавьте PostgreSQL, MySQL, Redis или MongoDB. Railway создаст переменные подключения, и в своём сервисе вы ссылаетесь на них шаблонной ссылкой на переменную сервиса базы — синтаксис есть в официальной документации Railway. Результат: база в приватной сети проекта, наружу не торчит.
Проверьте команды сборки и старта. Если автодетект ошибся, в Settings задайте Build Command и Start Command вручную. Для монорепо укажите Root Directory нужной папки. Результат: сервис поднимается той командой, которой нужно.
Сгенерируйте домен. В Settings → Networking нажмите Generate Domain. Railway выдаст поддомен вида имя-проекта.up.railway.app и сам поставит HTTPS. Результат: рабочая публичная ссылка, которую можно отправить заказчику.
Подключите свой домен. Там же нажмите Custom Domain, введите адрес, скопируйте предложенную CNAME-запись и добавьте её у своего регистратора. Результат: приложение открывается на вашем домене с валидным сертификатом.
Включите автодеплой. Проверьте, что сервис слушает нужную ветку. Дальше каждый push в неё запускает новую сборку, а история деплоев позволяет откатиться на предыдущий. Результат: обновление продакшена сводится к git push.
Самые частые причины, в порядке встречаемости:
Проверять стоит в таком порядке: логи деплоя → Variables → Networking. Обычно ответ находится на первом шаге.
| Railway | Replit | |
|---|---|---|
| Основной сценарий | продовый деплой из GitHub | написать и тут же запустить в браузере |
| Где живёт код | ваш репозиторий | среда Replit |
| Базы данных | отдельные сервисы в проекте | встроенное хранилище |
| Кому подойдёт | тем, у кого проект уже есть | тем, кто начинает с нуля и учится |
| Слабое место | нужен готовый репозиторий и Git | меньше контроля над инфраструктурой |
Часто их берут вместе: прототип собирают в Replit или Lovable, потом переносят код в репозиторий и деплоят через Railway. Для бэкенда с авторизацией и хранилищем удобно добавить Supabase, а фронтенд разместить как отдельный сервис того же проекта. Больше разборов по хостингу и инфраструктуре — в рубрике Инфраструктура.
Нужен ли Dockerfile? Нет, для стандартных стеков Railway собирает проект сам. Dockerfile нужен, когда требуются системные пакеты или конкретная версия рантайма.
Можно ли задеплоить фронтенд и бэкенд отдельно? Да. Создайте в одном проекте два сервиса из одного или разных репозиториев и укажите каждому свой Root Directory. Домен генерируется отдельно для каждого.
Как откатиться, если релиз сломал прод? В истории деплоев выберите последний рабочий и нажмите redeploy. Предыдущая сборка поднимется без пересборки из Git.
Мой домен уже куплен — что делать? Добавьте его через Custom Domain и создайте CNAME-запись у регистратора. Сертификат Railway выпустит сам после проверки DNS.
Как получить Railway через subs-ai.com? Оформляете подписку в каталоге и получаете доступ к Railway Hobby на год — инструкция по активации приходит после оплаты.
Путь от репозитория до рабочей ссылки укладывается в несколько минут: подключили GitHub, добавили переменные, сгенерировали домен. Дальше остаётся привязать свой адрес и настроить автодеплой из нужной ветки. Если планируете держать проект в продакшене год, посмотрите каталог subs-ai.com — Railway там идёт вместе с сервисами, которые обычно нужны тому же проекту: редактор с ИИ, база данных, аналитика.
Подписки, о которых речь в статье, есть у нас — годовой доступ по цене одного месяца.