OpenAICloudflare Developer Platform2026/06/18 0:00

Containers - exec() is now available for Containers

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

Containers: exec() が利用可能に

Key Points

  • this.ctx.container.exec() が利用可能
  • 標準入出力をストリーム対応
  • コマンドは暗黙のシェルなし

Summary

Cloudflare Containersで this.ctx.container.exec() が利用可能になりました。実行中のコンテナ内でプロセスを起動し、標準入出力をストリームし、終了コードを取得し、プロセスへシグナルを送ることができます。Container を継承したクラス内、または別の Durable Object から this.ctx.container 経由で呼び出します。対象のコンテナは既に起動している必要があります。

Key Points

  • 呼び出し例: await this.ctx.container.exec(["node","--version"])。戻り値のプロセスから await process.output() で出力と exitCode を取得。
  • コンテナが停止している場合は if (!this.ctx.container.running) { await this.start(); } のように起動してから実行する。
  • コマンド配列は暗黙のシェルを介しません。パイプやリダイレクト、変数展開が必要な場合は明示的にシェルを起動する(例: sh -c '...')。
  • 標準入力の ReadableStream を渡したり、標準出力/標準エラーをストリーミングで受け取ることができ、フロー制御にも対応。
  • 1回の RPC 呼び出しで複数の exec() をまとめて実行してコーディネート可能。
  • 詳細なオプションやストリーミング例はドキュメントの「Execute commands」を参照してください。

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

翻訳はまだありません。