Skip to content

Conversation

@marc0olo
Copy link
Member

@marc0olo marc0olo commented Jan 28, 2026

Summary

Adds a new guide for deploying canisters to specific subnets on the Internet Computer.

  • Explains when and why to target specific subnets (geographic, replication, colocation)
  • Documents the --subnet flag for icp deploy and icp canister create
  • Covers default subnet selection behavior (colocation with existing canisters)
  • Includes local network subnet configuration for Xnet testing
  • References canister migration (available on IC, not yet supported in icp-cli)

@marc0olo marc0olo requested a review from a team as a code owner January 28, 2026 14:28
@marc0olo marc0olo enabled auto-merge (squash) January 28, 2026 14:39

By default, `icp deploy` automatically selects a subnet for your canisters. You might want to target a specific subnet when:

- **Verified Application Subnets** — Deploy to subnets with additional security guarantees
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified application subnets are a retired concept. They still exist in code, but today are equal to standard app subnnets


- **Verified Application Subnets** — Deploy to subnets with additional security guarantees
- **Geographic Requirements** — Target subnets in specific regions (e.g., European subnets for data residency)
- **Specialized Subnets** — Use subnets with specific capabilities (Bitcoin, Fiduciary, etc.)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Every subnet supports BTC, and fiduciary is not an understandable capability. This should explain e.g. fiduciary or eu/eea or point to an explanation

| Type | Description |
|------|-------------|
| Application | General-purpose subnets for most canisters |
| Verified Application | Subnets with additional security measures for high-value applications |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| Verified Application | Subnets with additional security measures for high-value applications |

| Application | General-purpose subnets for most canisters |
| Verified Application | Subnets with additional security measures for high-value applications |
| Fiduciary | Handles sensitive operations like threshold ECDSA signatures |
| Bitcoin | Provides Bitcoin integration capabilities |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| Bitcoin | Provides Bitcoin integration capabilities |

| Verified Application | Subnets with additional security measures for high-value applications |
| Fiduciary | Handles sensitive operations like threshold ECDSA signatures |
| Bitcoin | Provides Bitcoin integration capabilities |
| System/NNS | Reserved for system canisters (not available for user deployment) |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| System/NNS | Reserved for system canisters (not available for user deployment) |
| System | Reserved for system canisters (not available for user deployment) |

only called system. The dashboard is the only place that also calls them NNS

- application
```

Available local subnet types: `application`, `system`, `verified-application`, `bitcoin`, `fiduciary`, `nns`, `sns`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure about the list, I thought only application and system are supported

@viviveevee viviveevee disabled auto-merge January 28, 2026 14:42
@marc0olo marc0olo requested a review from viviveevee January 28, 2026 15:35
@marc0olo marc0olo enabled auto-merge (squash) January 28, 2026 15:48
@marc0olo marc0olo merged commit 9ef6c34 into main Jan 28, 2026
77 checks passed
@marc0olo marc0olo deleted the marc0olo/docs-subnet-deployment-guide branch January 28, 2026 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants