Skip to content

Railway — это платформа инфраструктуры, где вы можете выделять ресурсы, разрабатывать с этой инфраструктурой локально, а затем развёртываться в облаке. Она обеспечивает мгновенные развёртывания из GitHub с нулевой конфигурацией, автоматическим SSL и встроенным выделением баз данных.

В этом руководстве описывается развёртывание приложения Bun с базой данных PostgreSQL (необязательно), что именно предоставляет шаблон ниже.

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

railway


Предварительные требования:

  • Приложение Bun, готовое к развёртыванию
  • Учётная запись Railway
  • Railway CLI (для метода развёртывания через CLI)
  • Учётная запись GitHub (для метода развёртывания через панель управления)

Метод 1: Развёртывание через CLI

Шаг 1

Убедитесь, что у вас установлен Railway CLI.

bash
bun install -g @railway/cli

Шаг 2

Войдите в вашу учётную запись Railway.

bash
railway login

Шаг 3

После успешной аутентификации инициализируйте новый проект.

bash
railway init

Шаг 4

После инициализации проекта добавьте новую базу данных и сервис.

NOTE

Шаг 4 необходим только если ваше приложение использует базу данных. Если вам не нужен PostgreSQL, перейдите к шагу 5.
bash
# Добавить базу данных PostgreSQL. Обязательно добавьте это сначала!
railway add --database postgres

# Добавить сервис приложения.
railway add --service bun-react-db --variables DATABASE_URL=\${{Postgres.DATABASE_URL}}

Шаг 5

После создания и подключения сервисов разверните приложение в Railway. По умолчанию сервисы доступны только в частной сети Railway. Чтобы сделать ваше приложение общедоступным, нужно сгенерировать публичный домен.

bash
# Развернуть приложение
railway up

# Сгенерировать публичный домен
railway domain

Ваше приложение теперь работает! Railway автоматически развёртывается при каждом push в GitHub.


Метод 2: Развёртывание через панель управления

Шаг 1

Создайте новый проект

  1. Перейдите в Панель управления Railway
  2. Нажмите "+ New""GitHub repo"
  3. Выберите ваш репозиторий

Шаг 2

Добавьте базу данных PostgreSQL и подключите эту базу данных к сервису

NOTE

Шаг 2 необходим только если ваше приложение использует базу данных. Если вам не нужен PostgreSQL, перейдите к шагу 3.
  1. Нажмите "+ New""Database""Add PostgreSQL"
  2. После создания базы данных выберите ваш сервис (не базу данных)
  3. Перейдите на вкладку "Variables"
  4. Нажмите "+ New Variable""Add Reference"
  5. Выберите DATABASE_URL из postgres

Шаг 3

Сгенерируйте публичный домен

  1. Выберите ваш сервис
  2. Перейдите на вкладку "Settings"
  3. В разделе "Networking" нажмите "Generate Domain"

Ваше приложение теперь работает! Railway автоматически развёртывается при каждом push в GitHub.


Конфигурация (необязательно)

По умолчанию Railway использует Nixpacks для автоматического обнаружения и сборки вашего приложения Bun с нулевой конфигурацией.

Однако использование сборщика приложений Railpack обеспечивает лучшую поддержку Bun и всегда будет поддерживать последнюю версию Bun. Предварительно настроенные шаблоны используют Railpack по умолчанию.

Чтобы включить Railpack в пользовательском проекте, добавьте следующее в ваш railway.json:

json
{
  "$schema": "https://railway.com/railway.schema.json",
  "build": {
    "builder": "RAILPACK"
  }
}

Дополнительные параметры конфигурации сборки см. в документации Railway.

Bun от www.bunjs.com.cn