From dd961f3961ca1ab0790157999c8aef8d86db523f Mon Sep 17 00:00:00 2001 From: mustaeen Date: Fri, 17 Apr 2026 17:19:46 -0400 Subject: [PATCH] [Containers] Add placement docs for regional and jurisdictional constraints --- .../2026-04-05-regional-placement.mdx | 4 +- .../containers/platform-details/placement.mdx | 60 +++++++++++++++++++ .../docs/workers/wrangler/configuration.mdx | 13 ++++ 3 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 src/content/docs/containers/platform-details/placement.mdx diff --git a/src/content/changelog/containers/2026-04-05-regional-placement.mdx b/src/content/changelog/containers/2026-04-05-regional-placement.mdx index dc97a401e948e4d..2871fa894eff6a3 100644 --- a/src/content/changelog/containers/2026-04-05-regional-placement.mdx +++ b/src/content/changelog/containers/2026-04-05-regional-placement.mdx @@ -3,7 +3,7 @@ title: Control where your Containers run with regional and jurisdictional placem description: Specify regions or jurisdictions to control where your containers run. products: - containers -date: 2026-04-15 +date: 2026-04-05 --- You can now specify placement constraints to control where your [Containers](/containers/) run. @@ -15,4 +15,4 @@ You can now specify placement constraints to control where your [Containers](/co Use `regions` to limit placement to specific geographic areas. Use `jurisdiction` to restrict containers to compliance boundaries — `eu` maps to European regions (EEUR, WEUR) and `fedramp` maps to North American regions (ENAM, WNAM). -Refer to [Containers architecture](/containers/platform-details/architecture/) for more details on placement. +Refer to [Containers placement](/containers/platform-details/placement/) for more details. diff --git a/src/content/docs/containers/platform-details/placement.mdx b/src/content/docs/containers/platform-details/placement.mdx new file mode 100644 index 000000000000000..c382dcf3cb7a659 --- /dev/null +++ b/src/content/docs/containers/platform-details/placement.mdx @@ -0,0 +1,60 @@ +--- +pcx_content_type: concept +title: Placement +sidebar: + order: 2 +description: Control where your containers run with regional and jurisdictional constraints. +--- + +import { WranglerConfig } from "~/components"; + +By default, containers run in the location nearest to the incoming request with a pre-fetched image. Use placement constraints to restrict where your containers run for data residency, compliance, or latency requirements. + +## Regional constraints + +Use the `regions` constraint to limit container placement to specific geographic areas: + +| Region | Description | Notes | +| ------ | --------------------- | ---------------- | +| `ENAM` | Eastern North America | | +| `WNAM` | Western North America | | +| `EEUR` | Eastern Europe | | +| `WEUR` | Western Europe | | +| `APAC` | Asia Pacific | | +| `SAM` | South America | | +| `ME` | Middle East | Limited capacity | +| `OC` | Oceania | Limited capacity | +| `AFR` | Africa | Limited capacity | + +Limited capacity regions (ME, OC, AFR) cannot be used exclusively. Include at least one other region, or contact support for dedicated access. + +## Jurisdictional constraints + +Use the `jurisdiction` constraint to restrict containers to compliance boundaries: + +| Jurisdiction | Regions | Use case | +| ------------ | ---------- | ------------------ | +| `eu` | EEUR, WEUR | EU data residency | +| `fedramp` | ENAM, WNAM | FedRAMP regions | + +When you specify both `jurisdiction` and `regions`, the regions must be valid for that jurisdiction. For example, specifying `jurisdiction: "eu"` with `regions: ["ENAM"]` is invalid. + +## Configure placement + +Set placement constraints in your Wrangler configuration: + + + +```toml +[[containers]] +name = "my-container" +image = "docker.io/my-org/my-image:latest" + +[containers.constraints] +regions = ["ENAM", "WNAM"] +jurisdiction = "fedramp" +``` + + + +Refer to [Lifecycle of a Container](/containers/platform-details/architecture/) for more details on how placement affects container startup and routing. diff --git a/src/content/docs/workers/wrangler/configuration.mdx b/src/content/docs/workers/wrangler/configuration.mdx index bd0e9b023fcd30a..19d6b415cf1b42a 100644 --- a/src/content/docs/workers/wrangler/configuration.mdx +++ b/src/content/docs/workers/wrangler/configuration.mdx @@ -1330,6 +1330,15 @@ The following options are available: - `authorized_keys` - Public keys that should be added to the Container's `authorized_keys` file. +- `constraints` + - Placement constraints for the container. Refer to [Containers placement](/containers/platform-details/placement/) for details. + +- `constraints.regions` + - Limit container placement to specific geographic regions. Valid values: `"ENAM"`, `"WNAM"`, `"EEUR"`, `"WEUR"`, `"APAC"`, `"SAM"`, `"ME"`, `"OC"`, `"AFR"`. + +- `constraints.jurisdiction` + - Restrict containers to compliance boundaries. Valid values: `"eu"`, `"fedramp"`. + ```jsonc @@ -1343,6 +1352,10 @@ The following options are available: "image_vars": { "FOO": "BAR", }, + "constraints": { + "regions": ["ENAM", "WNAM"], + "jurisdiction": "fedramp", + }, }, ], "durable_objects": {