クイックスタート
Source Checkout なしで SurgePilot を実行する場合は Tagged Release を使用します。 SurgePilot 自体を開発する場合は、ソースコードから起動します。
Tagged Release のインストール
前提条件
- Docker Engine 26 以降をインストールした Linux ホスト、または Docker Desktop 26 以降をインストールした macOS ホスト。
- Docker Compose 2.27 以降(旧式の
docker-composeではなく、docker composeコマンドを使用)。 curl、tarを含む標準的なホストツール。- 最初の
upを実行するための対話型ターミナル。
Installer は Docker のインストールや設定を行いません。
ステップ 1:インストールと起動
curl -fsSL https://github.com/latentrun/SurgePilot/releases/latest/download/install.sh | sh
surgepilot upInstaller は sudo を使用せず、Shell の起動ファイルも変更しません。選択された Release は ${XDG_DATA_HOME:-$HOME/.local/share}/surgepilot にインストールされ、Launcher は $HOME/.local/bin/surgepilot に作成されます。
このディレクトリが PATH に含まれていない場合は、Installer が表示する絶対パスのコマンドを 使用するか、現在の Shell だけで有効にします。
export PATH="$HOME/.local/bin:$PATH"
surgepilot upステップ 2:初回設定の確認
新規デプロイでは、surgepilot up が次の項目を確認します。
- ブラウザと外部 Load Node が使用する Hostname または IP Address。
- SurgePilot Web と API トラフィック用の HTTP Port。
- Load Node が Monitoring Data を書き込む InfluxDB Port。
他のマシンや Load Node から到達できるアドレスを使用してください。ローカル評価では localhost または 127.0.0.1 を入力できますが、保存される Node-Facing URL は別の マシンから利用できません。Docker は選択した Port を引き続き Host Interface 上に Publish します。Loopback のみに公開する必要がある場合は、ホストの Firewall を使用してください。
コマンドは正規化済みの非 Secret 設定を表示し、Use this configuration? [Y/n] と確認します。 Enter を押すと受け入れます。新しい Release Deployment では両方の Linux Runtime Architecture amd64,arm64 が選択され、Demo Load Node はデフォルトで無効です。
続いて、一致する Runtime Asset を検証してダウンロードし、Immutable Application Image を Pull、 Stack を起動して Web URL を表示します。生成される .env、Release Network Field、Optional Setting については、デプロイ設定を参照してください。
ステップ 3:デプロイの確認
surgepilot status
surgepilot logssurgepilot up が表示した Web URL を開き、初回実行へ進みます。
Volume と .env を削除せずに Stack を停止するには、次を実行します。
surgepilot downインストール済み Release のアップグレード
PostgreSQL、MinIO、その他の永続 Volume をバックアップし、実行中の Run と Load Node の 初期化が完了してから、同じ 2 つのコマンドを再度実行します。
curl -fsSL https://github.com/latentrun/SurgePilot/releases/latest/download/install.sh | sh
surgepilot upInstaller は、同じ Major Version に属する明示的な新しい Release を検証して準備します。 サポート対象の処理が実行中の場合、surgepilot up は Migration を拒否します。Target Database Migration の開始後は、同じ Target を再試行して Recovery します。Database の自動 Downgrade や Rollback はありません。Control Plane の Upgrade が成功した後も記録済み Runtime が古いままの Load Node は、必要に応じて明示的に再初期化してください。
ソースコードから起動する
ソースコードからの起動には Git、GNU Make または互換実装、POSIX Shell、Perl、curl、 tar/gzip、SHA-256 検証ツール、Docker、Docker Compose が必要です。 リポジトリのルートで次を実行します。
make setup
make start-full-stackMake は固定バージョンの mise Bootstrap をダウンロードして検証し、リポジトリが選択した Python 3.12、Node.js 22、pnpm、uv を分離された Contributor Namespace にインストールします。 Global Runtime Version や Shell Startup File は変更しません。オフラインかつ非変更の診断には make toolchain-check、Managed State の明示的な修復には make toolchain-install を使用します。
ルートに .env が存在しない場合、make start-full-stack は安全なローカルデプロイ状態を 作成し、Native Linux Architecture の Load Node Runtime を Build または再利用します。その後、 Control Plane、Monitoring、Compose 内部の Demo Load Node を起動します。 http://localhost:8080 を開いてください。
Source Template と Release Template は意図的に異なります。Source .env を変更する前に、 デプロイ設定を確認してください。
Demo Node は起動していますが、まだプロダクトデータベースには登録されていません。Run を開始する前に、 Load Node の準備にある Source Demo の手順を実行してください。
以降の Lifecycle 操作には、次のコマンドを使用します。
make restart-full-stack
make stop-full-stack実行準備を必要とせず UI だけをレビューする場合は、 Source Previewを使用してください。
この日本語訳は AI の支援により作成されています。英語版と内容が異なる場合は、英語版を正とします。