Orbit
Orbit でサポートされているフレームワークとランタイム
Orbit builds any project that installs with npm, yarn or pnpm and produces a folder of files or a Node.js server, and it detects the framework and package manager for you so most projects deploy…
Orbit は npm、yarn、pnpm でインストールでき、ファイルのフォルダまたは Node.js サーバーを生成するプロジェクトをビルドします。フレームワークとパッケージ マネージャーを自動検出するため、ほとんどのプロジェクトはビルド設定なしでデプロイできます。このガイドでは、検出される内容、一般的なフレームワークに必要な設定、サーバー モードをオンにする必要があるタイミング、Node.js バージョンの選択方法について説明します。
Orbit が自動的に検出するもの
ビルドが実行されると、Orbit が検出した内容を記録して表示します:
- フレームワーク: デプロイの詳細ページに表示され、プロジェクト概要のデプロイ カードにバッジとして表示されます。
- パッケージ マネージャー: ロックファイルから選択されます:
package-lock.jsonは npm、yarn.lockは yarn、pnpm-lock.yamlは pnpm です。
設定のビルド設定はすべてオプションです。フィールドを空白のままにすると、プレースホルダーが代わりに使用されるものを示します: インストール コマンドは npm ci (auto-detected) を表示し、ビルド コマンドは npm run build (auto-detected) を表示し、出力ディレクトリは dist (auto-detected) を表示します。

ロックファイルは 1 つだけコミットしてください。package-lock.json と yarn.lock の両方がリポジトリに含まれている場合、Orbit が選択するパッケージ マネージャーはローカルで使用しているものと異なる可能性があり、目立たない理由でマシンとは異なるインストールが行われます。使用していない方を削除してください。
フレームワーク別の設定
以下は各フレームワークに必要な値です。Orbit がフレームワーク用のスターター テンプレートを提供する場合、テンプレートはこれらの設定をそのまま使用します。
| フレームワーク | ビルド コマンド | 出力ディレクトリ | サーバー モード |
|---|---|---|---|
| Next.js、静的エクスポート | npm run build | out | オフ |
| Next.js、SSR または ISR | npm run build | .next | オン |
| Astro、静的 | astro build | dist | オフ |
| Astro、サーバー またはハイブリッド | astro build | dist | オン |
| Vite (React、Vue、Svelte) | npm run build | dist | オフ |
| SvelteKit | npm run build | build | アダプターに依存 |
| Nuxt 3 | npm run build | .output | オン |
| Remix | npm run build | build | オン |
| Express または普通の Node API | npm run build | dist | オン |
| Create React App | npm run build | build | オフ |
| 普通の HTML または静的ジェネレーター | 空白のままにするか、ジェネレーターのコマンド | . またはそれが書き込むフォルダ | オフ |
Vite は dist に常に書き込みます。build.outDir を vite.config.ts に設定している場合を除きます。Astro の出力フォルダはすべてのモードで dist です。モード間で変わるのはサーバー モードが必要かどうかで、ファイルが着地する場所ではありません。
サーバー モード
サーバー モードは 設定の ランタイムの下にあるトグルです。オンにすると、Orbit は各デプロイ後、静的ファイルのフォルダを提供する代わりに、npm start を実行してビルド マシンを有効にしておきます。
SSR を使用した Next.js、Remix、Nuxt、Express API、その他の静的エクスポートではないすべてのものに対してオンにします。本当に静的なビルドの場合はオフのままにします。
次のデプロイから適用されます。現在ライブになっているデプロイには適用されません。
サーバー モードが欠落している典型的な症状は、ホームページが完璧に読み込まれるが、すべての動的ルートが 404 を返すサイトです。ビルドは成功し、ファイルは公開されていますが、ルートに応答するサーバーが実行されていません。これが表示されている場合は、サーバー モードをオンにして、他の操作を行う前にデプロイし直してください。
Node.js バージョン
設定の ビルド設定の下にある Node.js バージョンを設定します。メジャー バージョン番号のみを入力してください: 18、20 または 22。プラットフォームのデフォルトを使用するには空白のままにします。
バージョンはビルドと、サーバー モードがオンの場合はランタイムの両方に適用されます。
デフォルトに依存するのではなく、バージョンを明示的に固定してください。より新しい Node が必要な依存関係は、明らかにそれを述べていないエラーでインストールに失敗します。バージョン固定により、「昨日は動作していた」ビルド エラーのクラス全体が削除されます。
モノリポ
ルート ディレクトリをアプリが含まれているサブディレクトリに設定します。例えば apps/web です。Orbit はそのディレクトリに変更してからインストール コマンドとビルド コマンドを実行します。
また、望ましいことですが予期しないかもしれないことをします。そのパスの外側のファイルのみを変更するプッシュは自動的にスキップされます。したがって、4 つの Orbit プロジェクトを持つモノリポは、コミットが実際に触れたアプリのみを再構築します。
各環境は、設定の ステージング: ビルド オーバーライドの下でルート ディレクトリを個別にオーバーライドできます。これは、ステージングが別のワークスペースをビルドする場合に便利です。
カスタム ビルド設定
設定の ビルド設定で何かをオーバーライドします:
| フィールド | 例 | 注記 |
|---|---|---|
| インストール コマンド | npm ci | または yarn install --frozen-lockfile、pnpm install --frozen-lockfile |
| ビルド コマンド | npm run build:prod | 記載の通りに正確に実行 |
| 出力ディレクトリ | dist/client | ビルド後に公開されるフォルダ |
| ルート ディレクトリ | apps/frontend | モノリポ サブディレクトリ |
| Node.js バージョン | 20 | メジャー バージョンのみ |
空白は自動検出を意味します。ビルド設定カードの 保存をクリックして適用します。
ステージングは ステージング: ビルド オーバーライドセクションで、これらのいずれかを個別にオーバーライドできます。そこで空白のままのフィールドはプロジェクト レベルの値を継承するため、ステージングのビルド コマンドのみを変更して、他はすべてそのままにしておくことができます。
ビルド キャッシュ
Orbit は Liftoff プランと Apex プランでビルド間で node_modules をキャッシュします。キャッシュが使用されると、デプロイは キャッシュ ヒットバッジを表示し、インストール フェーズははるかに短くなります。それなしでのビルドは コールド ビルドを表示します。
完全な再インストールを強制するには、設定を開き、ビルド キャッシュをクリアを選択して確認します。各環境の次のデプロイメントは、完全な再インストールを最初から実行します。これは元に戻すことはできず、その後のビルドは遅くなります。
ビルド マシンのリソース
ビルド マシンのサイズはプランに依存します。これは大規模なビルドに関係します:
| プラン | vCPU | RAM | ディスク | 時間制限 |
|---|---|---|---|---|
| Launch | 1 | 1 GB | 4 GB | 30 分 |
| Liftoff | 2 | 2 GB | 8 GB | 30 分 |
| Apex | 4 | 4 GB | 16 GB | 30 分 |
メモリ不足またはディスクがいっぱいになるビルドは、デプロイ ページにその失敗カテゴリーが名前付きで失敗します。NODE_OPTIONS=--max-old-space-size を上げることは、マシンの実際の RAM までしか役立ちません。
テンプレートから開始
リポジトリを持つ前に、動作するデプロイが必要な場合は、スターター テンプレートを使用します。新しいプロジェクトで Git リポジトリをインポートからテンプレートから開始に切り替えて、いずれかを選択します。Next.js と shadcn/ui、Astro マーケティング サイト、Remix Indie Stack、SvelteKit スターター、最小 Nuxt 3 アプリ、または Express REST API です。Orbit はテンプレートをコピーし、適切なビルド設定を適用して、デプロイします。
関連資料
- ビルド コマンドと出力ディレクトリの設定: フレームワーク別の詳細と一般的なミスについて
- 失敗したビルドのトラブルシューティング
- Orbit プラン制限