Skip to content

Environments in Azure Container Apps

An Azure Container Apps environment is the shared boundary for networking, logging, ingress behavior, and workload placement. Use this section to decide which environment type to create, how to size networking, and when to separate workloads into different environments.

Main Content

Environment decisions happen before app decisions

flowchart TD
    A[Choose environment type] --> B[Choose networking model]
    B --> C[Choose workload profiles]
    C --> D[Place apps on profiles]
    D --> E[Set revision and scale rules]
    E --> F[Operate quotas and lifecycle]

What an environment controls

An environment is the shared platform boundary for:

  • Virtual network placement and ingress exposure.
  • Log Analytics integration and shared platform services.
  • Workload profile mix in a Workload profiles (v2) environment.
  • App placement, replica capacity planning, and quota management.

Environment boundaries are hard to change later

Microsoft Learn states that the network type can't be changed after environment creation. Decide VNet model, subnet size, and isolation boundaries before large-scale app onboarding.

Environment map

Page Focus Use it when
Plans and Workload Profiles Environment types, plans, and capability comparison You need to choose v1 vs v2 and understand plan terminology
Consumption Plan Legacy Consumption-only environment behavior You inherited a v1 environment or need to understand its limits
Workload Profiles Consumption, Dedicated, and Flex profile placement You need mixed compute shapes in one environment
Dedicated GPU Profiles GPU-enabled profile options and limits You need GPU-backed inference or batch workloads
Networking and CIDR Subnet minimums, delegation, and IP planning You are designing VNet-integrated environments
Limits and Quotas Platform ceilings, quota scope, and increase paths You need to validate scale headroom before production
Migration Environment lifecycle and cutover playbooks You are moving between environment types, regions, or subscriptions

Boundary heuristics

Use separate environments when you need:

  • Different trust boundaries or ingress posture.
  • Different subnet, NAT, or private endpoint strategies.
  • Different workload profile mixes or quota domains.
  • Independent lifecycle control for production vs non-production tiers.

Keep related apps together when they share:

  • The same network and compliance boundary.
  • The same operational ownership.
  • The same dependency and traffic profile.

Do not treat the environment as only a folder for apps

Environment design changes networking, quota scope, profile selection, and migration effort. Rebuilding an environment later is possible, but it is always more disruptive than getting the boundary right early.

See Also

Sources