Skip to main content

ビルド

テンプレート定義の準備ができたら、Template.build(...) を使用してビルドします。ビルドでは、テンプレート名に加えて、CPU、メモリ、タグ、キャッシュ動作、ビルドログのコールバックなどの任意のビルド設定を受け付けます。
プロセス全体の完了を待たずにビルドを作成したい場合は、Template.buildInBackground(...) / Template.build_in_background(...) を使用し、後でビルドステータスを確認します。

名前

すべてのビルドにはテンプレート名が必要です。論理的なテンプレートファミリーでは、名前を安定させてください。例:
  • my-python-template
  • agent-runtime-base
  • sandbox-webapp
名前は、テンプレートファミリーの長期的な識別子として扱います。返されるテンプレート ID は、実行時に使用する不変のビルド出力です。

タグとバージョン管理

タグを使用すると、基になるテンプレート名を変更せずに、リリース管理用にビルドにラベルを付けることができます。 一般的なパターンには次のようなものがあります。
  • v1.0.0 などのセマンティックバージョン
  • stagingproduction などの昇格ラベル
  • latest などの移動チャネル
タグはビルド中に割り当てることも、ビルド後にテンプレートタグ API を使用して割り当てることもできます。
テンプレートファミリーには名前を使用し、リリースマーカーにはタグを使用します。これにより、ロールフォワードとロールバックのワークフローをシンプルに保てます。

ログ記録

ビルドログは、プロビジョニングの進行状況を確認し、障害を診断するのに役立ちます。 JavaScript と TypeScript では、Template.build(...)onBuildLogs を渡します。SDK は標準のコンソールロガーとして defaultBuildLogger(...) もエクスポートしています。
バックグラウンドでビルドする場合は、Template.getBuildStatus(...) / Template.get_build_status(...) を使用してステータスをポーリングし、後でログエントリを取得します。

エラー処理

テンプレートビルドは、一般的に次のような理由で失敗することがあります。
  • プライベートレジストリの認証情報が無効
  • runCmd(...) / run_cmd(...) 内でのパッケージインストール失敗
  • start コマンドが予期せず終了する
  • ready コマンドが成功しないままになる
  • CPU とメモリの設定がプラットフォームの制限を満たしていない
ビルドが失敗した場合:
  1. まずビルドログを確認する
  2. テンプレートのソースイメージまたは Dockerfile を検証する
  3. 古いレイヤーが疑われる場合は、キャッシュを無効にして再実行する
  4. テンプレートを、失敗する最小の命令シーケンスまで縮小する
非同期ビルドフローでは、返されたビルドステータスを確認します。SDK は、buildingwaitingreadyerror などのステータスを公開しています。
最終更新日 2026年8月10日