XContainerApp¶
Experimental
This API is experimental and may change without notice.
An Azure Container App and its managed Container App Environment.
API¶
| Property | Value |
|---|---|
| Group | azure.platform.example.org |
| Kind | XContainerApp |
| Plural | xcontainerapps |
| Scope | Namespaced |
| Versions | v1alpha1 (referenceable) |
| Source | compositions/apis/azure/containerapp/schema.yaml |
Spec¶
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
envVars (nullable) |
map[string]string |
no | null |
Plain (non-secret) environment variables passed to the container. |
image |
string |
yes | — | Container image reference to run, e.g. docker.io/library/nginx:latest. |
location |
string |
no | swedencentral |
Azure region for the Container App. |
maxReplicas |
integer |
no | 3 |
Maximum number of container replicas. |
minReplicas |
integer |
no | 1 |
Minimum number of container replicas. |
name immutable |
string |
yes | — | Name of the Container App. |
port |
integer |
no | 8080 |
Port the container listens on. |
resourceGroupRef |
object |
yes | — | Resource group hosting the Container App. |
resourceGroupRef.name |
string |
yes | — | Logical name of the XResourceGroup. |
size |
string |
no | small |
T-shirt size: small = 0.25 vCPU/0.5Gi, medium = 0.5 vCPU/1Gi, large = 1 vCPU/2Gi. One of: small, medium, large. |
Fields marked immutable are fixed once the resource is created; changing one is rejected by the API server. An immutable object pins the fields nested under it too. To change one, delete the resource and create it again.
Example¶
Create the referenced XResourceGroup before creating the app. The team example is disabled by default in its kustomization.yaml.
---
apiVersion: azure.platform.example.org/v1alpha1
kind: XContainerApp
metadata:
name: containerappdemo01
spec:
name: containerappdemo01
size: small
resourceGroupRef:
name: crd-dev-apps
image: docker.io/library/nginx:latest
port: 80
Taken from teams/crd-dev/apps.yaml,
which is applied to the cluster by Flux, so it cannot drift from a working
manifest.
Status¶
Populated by Crossplane once the underlying Azure resources exist. Every
composite in this repository exposes the provisioned Azure resource ID as
status.id.
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
environmentId |
string |
no | — | Azure resource ID of the Container App Environment. |
fqdn |
string |
no | — | Public fully qualified domain name of the Container App. |
id |
string |
no | — | Azure resource ID of the Container App. |