Railway は、インフラストラクチャをプロビジョニングし、ローカルで開発し、クラウドにデプロイできるインフラストラクチャプラットフォームです。GitHub からゼロ設定で即時デプロイ、自動 SSL、組み込みデータベースプロビジョニングを有効にします。
このガイドでは、PostgreSQL データベース(オプション)を使用して Bun アプリケーションをデプロイする手順を説明します。
このガイドを段階的にフォローするか、事前設定されたテンプレートをワンクリックでデプロイできます。
前提条件:
- デプロイ準備が整った Bun アプリケーション
- Railway アカウント
- Railway CLI(CLI デプロイ方法の場合)
- GitHub アカウント(ダッシュボードデプロイ方法の場合)
方法 1: CLI を介してデプロイする
ステップ 1
Railway CLI がインストールされていることを確認します。
bun install -g @railway/cliステップ 2
Railway アカウントにログインします。
railway loginステップ 3
正常に認証された後、新しいプロジェクトを初期化します。
railway initステップ 4
プロジェクトを初期化した後、新しいデータベースとサービスを追加します。
NOTE
ステップ 4 はアプリケーションがデータベースを使用する場合にのみ必要です。PostgreSQL が必要ない場合は、ステップ 5 にスキップしてください。# PostgreSQL データベースを追加。最初にこれを追加してください!
railway add --database postgres
# アプリケーションサービスを追加。
railway add --service bun-react-db --variables DATABASE_URL=\${{Postgres.DATABASE_URL}}ステップ 5
サービスが作成および接続された後、アプリケーションを Railway にデプロイします。デフォルトでは、サービスは Railway のプライベートネットワーク内でのみアクセス可能です。アプリを公開アクセス可能にするには、パブリックドメインを生成する必要があります。
# アプリケーションをデプロイ
railway up
# パブリックドメインを生成
railway domainアプリが稼働しました!Railway は GitHub にプッシュするたびに自動デプロイします。
方法 2: ダッシュボードを介してデプロイする
ステップ 1
新しいプロジェクトを作成
- Railway ダッシュボード に移動
- "+ New" → "GitHub repo" をクリック
- リポジトリを選択
ステップ 2
PostgreSQL データベースを追加し、このデータベースをサービスに接続
NOTE
ステップ 2 はアプリケーションがデータベースを使用する場合にのみ必要です。PostgreSQL が必要ない場合は、ステップ 3 にスキップしてください。- "+ New" → "Database" → "Add PostgreSQL" をクリック
- データベースが作成された後、サービス(データベースではない)を選択
- "Variables" タブに移動
- "+ New Variable" → "Add Reference" をクリック
- postgres から
DATABASE_URLを選択
ステップ 3
パブリックドメインを生成
- サービスを選択
- "Settings" タブに移動
- "Networking" の下で、"Generate Domain" をクリック
アプリが稼働しました!Railway は GitHub にプッシュするたびに自動デプロイします。
設定(オプション)
デフォルトでは、Railway は Nixpacks を使用して、Bun アプリケーションをゼロ設定で自動的に検出およびビルドします。
ただし、Railpack アプリケーションビルダーを使用すると、より良い Bun サポートが提供され、常に最新バージョンの Bun をサポートします。事前設定されたテンプレートはデフォルトで Railpack を使用します。
カスタムプロジェクトで Railpack を有効にするには、railway.json に以下を追加します。
{
"$schema": "https://railway.com/railway.schema.json",
"build": {
"builder": "RAILPACK"
}
}ビルド設定の詳細については、Railway ドキュメント を参照してください。