INTEGRITY Dokumentace

Konfigurace Wrangleru

Minimální konfigurace

Minimální konfigurace potřebná pro použití Sandbox SDK:

{
	"name": "my-sandbox-worker",
	"main": "src/index.ts",
	// Set this to today's date
	"compatibility_date": "2026-08-28",
	"compatibility_flags": ["nodejs_compat"],
	"containers": [
		{
			"class_name": "Sandbox",
			"image": "./Dockerfile",
		},
	],
	"durable_objects": {
		"bindings": [
			{
				"class_name": "Sandbox",
				"name": "Sandbox",
			},
		],
	},
	"migrations": [
		{
			"new_sqlite_classes": ["Sandbox"],
			"tag": "v1",
		},
	],
}
name = "my-sandbox-worker"
main = "src/index.ts"
# Set this to today's date
compatibility_date = "2026-08-28"
compatibility_flags = [ "nodejs_compat" ]

[[containers]]
class_name = "Sandbox"
image = "./Dockerfile"

[[durable_objects.bindings]]
class_name = "Sandbox"
name = "Sandbox"

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

Povinná nastavení

Sandbox SDK je postaveno na Cloudflare Containers. Vaše konfigurace vyžaduje tři části:

  1. kontejnery - Definujte obraz kontejneru (vaše běhové prostředí)
  2. durable_objects.bindings - Připojte Sandbox Durable Object k vašemu Workeru
  3. migrace - Inicializace třídy Durable Object

Minimální konfigurace uvedená výše obsahuje všechna požadovaná nastavení. Podrobné možnosti konfigurace najdete v Dokumentace ke konfiguraci kontejnerů.

Úložiště záloh

Chcete-li použít API pro zálohování a obnovení, potřebujete vazbu na R2 bucket a přihlašovací údaje pro předem podepsané URL adresy. Kontejner nahrává a stahuje archivy záloh přímo do R2 a z R2 pomocí předem podepsaných URL adres, což vyžaduje přihlašovací údaje tokenu API R2.

1. Vytvořte R2 bucket

npx wrangler r2 bucket create my-backup-bucket

2. Přidejte binding a proměnné prostředí

{
	"vars": {
		"BACKUP_BUCKET_NAME": "my-backup-bucket",
		"CLOUDFLARE_ACCOUNT_ID": "<YOUR_ACCOUNT_ID>",
	},
	"r2_buckets": [
		{
			"binding": "BACKUP_BUCKET",
			"bucket_name": "my-backup-bucket",
		},
	],
}
[vars]
BACKUP_BUCKET_NAME = "my-backup-bucket"
CLOUDFLARE_ACCOUNT_ID = "<YOUR_ACCOUNT_ID>"

[[r2_buckets]]
binding = "BACKUP_BUCKET"
bucket_name = "my-backup-bucket"

3. Nastavte přihlašovací údaje R2 API jako secrets

npx wrangler secret put R2_ACCESS_KEY_ID
npx wrangler secret put R2_SECRET_ACCESS_KEY

Vytvořte token R2 API v Cloudflare dashboard ↗ v části R2 > Přehled > Správa tokenů R2 API. Token vyžaduje Object Read & Write oprávnění pro bucket se zálohami.

SDK používá tyto přihlašovací údaje k vygenerování presigned URL adres, které kontejneru umožňují přenášet archivy záloh přímo do R2 a z něj. Kompletní postup nastavení najdete v průvodce zálohováním a obnovením.

Řešení potíží

Binding nenalezen

Chyba: TypeError: env.Sandbox is undefined

Řešení: Ujistěte se, že vaše wrangler.jsonc obsahuje Durable Objects binding:

{
	"durable_objects": {
		"bindings": [
			{
				"class_name": "Sandbox",
				"name": "Sandbox",
			},
		],
	},
}
[[durable_objects.bindings]]
class_name = "Sandbox"
name = "Sandbox"

Chybějící migrace

Chyba: Durable Object není inicializován

Řešení: Přidejte migrace pro třídu Sandbox:

{
	"migrations": [
		{
			"new_sqlite_classes": ["Sandbox"],
			"tag": "v1",
		},
	],
}
[[migrations]]
new_sqlite_classes = [ "Sandbox" ]
tag = "v1"