Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Containers

最終更新 Markdown で表示Agent セットアップ

サーバーレス Container で Workers を強化します

Workers Paid プランで利用できます

任意のプログラミング言語で書いたコードを、任意のランタイム向けにビルドし、Workers 上のアプリの一部として実行できます。

インフラ管理を気にせず、Container イメージを Region:Earth にデプロイできます。Worker を定義し、wrangler deploy するだけです。

Containers では次を実行できます。

  • CPU コアの並列実行、大量のメモリやディスク容量が必要な、リソース負荷の高いアプリケーション
  • 完全なファイルシステム、特定のランタイム、Linux に近い環境が必要なアプリケーションやライブラリ
  • Container イメージとして配布されている既存のアプリケーションやツール

Container インスタンスはオンデマンドで起動し、Worker に書いたコードで制御します。API 呼び出しをつなげたり Kubernetes オペレーターを書いたりする代わりに、JavaScript を書くだけです。

import { Container, getContainer } from "@cloudflare/containers";

export class MyContainer extends Container {
	defaultPort = 4000; // Port the container is listening on
	sleepAfter = "10m"; // Stop the instance if requests not sent for 10 minutes
}

export default {
	async fetch(request, env) {
		const { "session-id": sessionId } = await request.json();
		// Get the container instance for the given session ID
		const containerInstance = getContainer(env.MY_CONTAINER, sessionId);
		// Pass the request to the container instance on its default port
		return containerInstance.fetch(request);
	},
};
{
	"name": "container-starter",
	"main": "src/index.js",
	// Set this to today's date
	"compatibility_date": "2026-09-20",
	"containers": [
		{
			"class_name": "MyContainer",
			"image": "./Dockerfile",
			"max_instances": 5
		}
	],
	"durable_objects": {
		"bindings": [
			{
				"class_name": "MyContainer",
				"name": "MY_CONTAINER"
			}
		]
	},
	"migrations": [
		{
			"new_sqlite_classes": ["MyContainer"],
			"tag": "v1"
		}
	]
}
name = "container-starter"
main = "src/index.js"
# Set this to today's date
compatibility_date = "2026-09-20"

[[containers]]
class_name = "MyContainer"
image = "./Dockerfile"
max_instances = 5

[[durable_objects.bindings]]
class_name = "MyContainer"
name = "MY_CONTAINER"

[[migrations]]
new_sqlite_classes = [ "MyContainer" ]
tag = "v1"

はじめに

Containers ダッシュボード


次のステップ

はじめに

イメージをビルドしてプッシュし、Worker から Container を呼び出し、スケールとルーティングを試します。

ステートレスおよびステートフルなルーティング、リージョン配置、Workflow と Queue の連携、AI 生成コードの実行、短寿命のワークロードです。

ローカル開発

デプロイ前に、wrangler dev または vite dev で Worker と Container を一緒に実行します。

デプロイ

手元のマシンまたは Workers Builds からデプロイし、完了を確認します。


その他のリソース

ロールアウト

デプロイ後に Container インスタンスが更新される仕組みです。

イメージ管理

Containers 向けにイメージをビルド、プッシュ、プルします。

制限

インスタンス数、イメージサイズ、その他のプラットフォーム制限です。

Wrangler

イメージと Container 向けの CLI コマンドです。

SSH

Wrangler 経由の SSH で、稼働中の Container インスタンスに接続します。

Containers Discord

質問したり、作っているものを共有したり、ほかの Containers 開発者と話したりできます。

役に立ちましたか?