Microsoft.App containerApps
Bicep リソース定義
containerApps リソースの種類は、次を対象とする操作と共にデプロイできます。
- リソース グループの - リソース グループのデプロイ コマンド 参照
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoft.App/containerApps リソースを作成するには、次の Bicep をテンプレートに追加します。
resource symbolicname 'Microsoft.App/containerApps@2024-10-02-preview' = {
extendedLocation: {
name: 'string'
type: 'string'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
kind: 'string'
location: 'string'
managedBy: 'string'
name: 'string'
properties: {
configuration: {
activeRevisionsMode: 'string'
dapr: {
appId: 'string'
appPort: int
appProtocol: 'string'
enableApiLogging: bool
enabled: bool
httpMaxRequestSize: int
httpReadBufferSize: int
logLevel: 'string'
}
identitySettings: [
{
identity: 'string'
lifecycle: 'string'
}
]
ingress: {
additionalPortMappings: [
{
exposedPort: int
external: bool
targetPort: int
}
]
allowInsecure: bool
clientCertificateMode: 'string'
corsPolicy: {
allowCredentials: bool
allowedHeaders: [
'string'
]
allowedMethods: [
'string'
]
allowedOrigins: [
'string'
]
exposeHeaders: [
'string'
]
maxAge: int
}
customDomains: [
{
bindingType: 'string'
certificateId: 'string'
name: 'string'
}
]
exposedPort: int
external: bool
ipSecurityRestrictions: [
{
action: 'string'
description: 'string'
ipAddressRange: 'string'
name: 'string'
}
]
stickySessions: {
affinity: 'string'
}
targetPort: int
targetPortHttpScheme: 'string'
traffic: [
{
label: 'string'
latestRevision: bool
revisionName: 'string'
weight: int
}
]
transport: 'string'
}
maxInactiveRevisions: int
registries: [
{
identity: 'string'
passwordSecretRef: 'string'
server: 'string'
username: 'string'
}
]
revisionTransitionThreshold: int
runtime: {
dotnet: {
autoConfigureDataProtection: bool
}
java: {
enableMetrics: bool
javaAgent: {
enabled: bool
logging: {
loggerSettings: [
{
level: 'string'
logger: 'string'
}
]
}
}
}
}
secrets: [
{
identity: 'string'
keyVaultUrl: 'string'
name: 'string'
value: 'string'
}
]
service: {
type: 'string'
}
targetLabel: 'string'
}
environmentId: 'string'
managedEnvironmentId: 'string'
patchingConfiguration: {
patchingMode: 'string'
}
template: {
containers: [
{
args: [
'string'
]
command: [
'string'
]
env: [
{
name: 'string'
secretRef: 'string'
value: 'string'
}
]
image: 'string'
imageType: 'string'
name: 'string'
probes: [
{
failureThreshold: int
httpGet: {
host: 'string'
httpHeaders: [
{
name: 'string'
value: 'string'
}
]
path: 'string'
port: int
scheme: 'string'
}
initialDelaySeconds: int
periodSeconds: int
successThreshold: int
tcpSocket: {
host: 'string'
port: int
}
terminationGracePeriodSeconds: int
timeoutSeconds: int
type: 'string'
}
]
resources: {
cpu: int
gpu: int
memory: 'string'
}
volumeMounts: [
{
mountPath: 'string'
subPath: 'string'
volumeName: 'string'
}
]
}
]
initContainers: [
{
args: [
'string'
]
command: [
'string'
]
env: [
{
name: 'string'
secretRef: 'string'
value: 'string'
}
]
image: 'string'
imageType: 'string'
name: 'string'
resources: {
cpu: int
gpu: int
memory: 'string'
}
volumeMounts: [
{
mountPath: 'string'
subPath: 'string'
volumeName: 'string'
}
]
}
]
revisionSuffix: 'string'
scale: {
cooldownPeriod: int
maxReplicas: int
minReplicas: int
pollingInterval: int
rules: [
{
azureQueue: {
accountName: 'string'
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
identity: 'string'
queueLength: int
queueName: 'string'
}
custom: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
identity: 'string'
metadata: {
{customized property}: 'string'
}
type: 'string'
}
http: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
identity: 'string'
metadata: {
{customized property}: 'string'
}
}
name: 'string'
tcp: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
identity: 'string'
metadata: {
{customized property}: 'string'
}
}
}
]
}
serviceBinds: [
{
clientType: 'string'
customizedKeys: {
{customized property}: 'string'
}
name: 'string'
serviceId: 'string'
}
]
terminationGracePeriodSeconds: int
volumes: [
{
mountOptions: 'string'
name: 'string'
secrets: [
{
path: 'string'
secretRef: 'string'
}
]
storageName: 'string'
storageType: 'string'
}
]
}
workloadProfileName: 'string'
}
tags: {
{customized property}: 'string'
}
}
プロパティ値
構成
名前 | 形容 | 価値 |
---|---|---|
activeRevisionsMode | ActiveRevisionsMode は、コンテナー アプリのアクティブなリビジョンの処理方法を制御します。 <リスト><項目>単一: 一度にアクティブにできるのはリビジョンが 1 つだけです。 トラフィックの重みは使用できません。 これが既定値です。</item><項目>複数: オプションのトラフィックの重みとラベルを含む複数のリビジョンをアクティブにすることができます。</item><項目>ラベル: ラベル付きのリビジョンのみがアクティブです。 トラフィックの重みはラベルに適用できます。/list>></item を<する |
'Labels' 'Multiple' 'Single' |
dapr | コンテナー アプリの Dapr 構成。 | Dapr |
identitySettings | コンテナー アプリに割り当てられているマネージド ID のオプション設定。 ここでマネージド ID が指定されていない場合は、既定の設定が使用されます。 | IdentitySettings[] |
イングレス | イングレス構成。 | イングレス |
maxInactiveRevisions | 随意。 コンテナー アプリで使用できる非アクティブなリビジョンの最大数。 | int |
レジストリ | コンテナー アプリによって使用されるコンテナーのプライベート コンテナー レジストリ資格情報のコレクション | RegistryCredentials[] |
revisionTransitionThreshold | 随意。 リビジョン遷移が発生する前に起動する必要があるレプリカの合計数の割合。 既定値は 100 (何も指定しない場合) です。 値は 0 より大きく、100 以下である必要があります。 | int 制約: 最小値 = 1 最大値 = 100 |
実行中 | コンテナー アプリのアプリ ランタイム構成。 | Runtime |
秘密 | コンテナー アプリによって使用されるシークレットのコレクション | シークレット[] |
サービス | コンテナー アプリを開発用 Container App Service にする | サービス |
targetLabel | ラベル変更モードで必要です。 新しく作成されたリビジョンに適用するラベル。 | 糸 |
コンテナ
名前 | 形容 | 価値 |
---|---|---|
args | コンテナーの開始コマンド引数。 | string[] |
命令 | コンテナーの開始コマンド。 | string[] |
env | コンテナー環境変数。 | EnvironmentVar[] |
画像 | コンテナー イメージ タグ。 | 糸 |
画像タイプ | イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 | 'CloudBuild' 'ContainerImage' |
名前 | カスタム コンテナー名。 | 糸 |
プローブ | コンテナーのプローブの一覧。 | ContainerAppProbe[] |
リソース | コンテナー リソースの要件。 | ContainerResources の |
volumeMounts | コンテナー ボリュームのマウント。 | VolumeMount[] |
ContainerAppProbe
名前 | 形容 | 価値 |
---|---|---|
failureThreshold | 成功した後に失敗したと見なされるプローブの連続する最小障害。 既定値は 3 です。 最小値は 1 です。 最大値は 10 です。 | int |
httpGet | HTTPGet は、実行する http 要求を指定します。 | ContainerAppProbeHttpGet の |
initialDelaySeconds | コンテナーが起動してから、liveness プローブが開始されるまでの秒数。 最小値は 1 です。 最大値は 60 です。 | int |
periodSeconds | プローブを実行する頻度 (秒単位)。 既定値は 10 秒です。 最小値は 1 です。 最大値は 240 です。 | int |
successThreshold | 失敗した後にプローブが成功したと見なされる最小連続成功数。 既定値は 1 です。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 最大値は 10 です。 | int |
tcpSocket | TCPSocket は、TCP ポートに関連するアクションを指定します。 TCP フックはまだサポートされていません。 | ContainerAppProbeTcpSocket の |
terminationGracePeriodSeconds | プローブの障害時にポッドを正常に終了する必要がある時間 (秒単位)。 猶予期間は、ポッドで実行されているプロセスが終了シグナルを送信してから数秒で、プロセスが強制終了シグナルで強制的に停止される時間です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 この値が nil の場合、ポッドの terminationGracePeriodSeconds が使用されます。 それ以外の場合、この値はポッド スペックによって提供される値をオーバーライドします。値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 これはアルファ フィールドであり、ProbeTerminationGracePeriod 機能ゲートを有効にする必要があります。 最大値は 3600 秒 (1 時間) です。 | int |
timeoutSeconds | プローブがタイムアウトする秒数。既定値は 1 秒です。 最小値は 1 です。 最大値は 240 です。 | int |
種類 | プローブの種類。 | 'Liveness' 'Readiness' 'Startup' |
ContainerAppProbeHttpGet
名前 | 形容 | 価値 |
---|---|---|
ホスト | 接続先のホスト名。既定ではポッド IP が使用されます。 代わりに httpHeaders で "Host" を設定することをお考えでしょう。 | 糸 |
httpHeaders | 要求で設定するカスタム ヘッダー。 HTTP では、ヘッダーを繰り返し使用できます。 | ContainerAppProbeHttpGetHttpHeadersItem[] |
パス | HTTP サーバー上のアクセスのパス。 | 糸 |
港 | コンテナーでアクセスするポートの名前または番号。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 | int (必須) |
計画 | ホストへの接続に使用するスキーム。 既定値は HTTP です。 | 'HTTP' 'HTTPS' |
ContainerAppProbeHttpGetHttpHeadersItem
名前 | 形容 | 価値 |
---|---|---|
名前 | ヘッダー フィールド名 | string (必須) |
価値 | ヘッダー フィールドの値 | string (必須) |
ContainerAppProbeTcpSocket
名前 | 形容 | 価値 |
---|---|---|
ホスト | 省略可能: 接続先のホスト名。既定ではポッド IP が使用されます。 | 糸 |
港 | コンテナーでアクセスするポートの番号または名前。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 | int (必須) |
ContainerAppProperties
名前 | 形容 | 価値 |
---|---|---|
構成 | バージョン管理されていない Container App 構成プロパティ。 | Configuration |
environmentId | 環境のリソース ID。 | 糸 |
managedEnvironmentId | 廃止。 コンテナー アプリの環境のリソース ID。 | 糸 |
patchingConfiguration | コンテナー アプリの自動修正プログラムの構成。 | ContainerAppPropertiesPatchingConfiguration |
テンプレート | コンテナー アプリのバージョン管理されたアプリケーション定義。 | テンプレート |
workloadProfileName | コンテナー アプリの実行にピン留めするワークロード プロファイル名。 | 糸 |
ContainerAppPropertiesPatchingConfiguration
名前 | 形容 | 価値 |
---|---|---|
patchingMode | コンテナー アプリの修正プログラムの適用モード。 このフィールドの Null または既定値は、RP によって自動として解釈されます。 自動モードでは、使用可能なパッチが自動的に適用されます。 手動モードでは、ユーザーは手動でパッチを適用する必要があります。 無効モードでは、パッチの検出と自動修正が停止されます。 | 'Automatic' 'Disabled' 'Manual' |
ContainerResources
名前 | 形容 | 価値 |
---|---|---|
cpu | コアで必要な CPU (例: 0.5) | int |
gpu | GPU ベースのアプリのコアに必要な GPU (例: 1.0) | int |
記憶 | 必要なメモリ (例: "250Mb" ) | 糸 |
CorsPolicy
名前 | 形容 | 価値 |
---|---|---|
allowCredentials | リソースで資格情報を許可するかどうかを指定します | bool |
allowedHeaders | access-control-allow-headers ヘッダーの内容を指定します | string[] |
allowedMethods | access-control-allow-methods ヘッダーの内容を指定します | string[] |
allowedOrigins | access-control-allow-origins ヘッダーのコンテンツを指定します | string[] (必須) |
exposeHeaders | access-control-expose-headers ヘッダーのコンテンツを指定します | string[] |
maxAge | access-control-max-age ヘッダーのコンテンツを指定します | int |
CustomDomain
名前 | 形容 | 価値 |
---|---|---|
bindingType | カスタム ドメイン バインドの種類。 | 'Auto' 'Disabled' 'SniEnabled' |
certificateId | このホスト名にバインドする証明書のリソース ID。 マネージド環境に存在する必要があります。 | 糸 |
名前 | ホスト名。 | string (必須) |
CustomScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | カスタム スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | カスタム スケール ルールを記述するメタデータ プロパティ。 | CustomScaleRuleMetadata を |
種類 | カスタム スケール ルールの種類 例: azure-servicebus、redis など。 |
糸 |
CustomScaleRuleMetadata
名前 | 形容 | 価値 |
---|
Dapr
名前 | 形容 | 価値 |
---|---|---|
appId | Dapr アプリケーション識別子 | 糸 |
appPort | アプリケーションがリッスンしているポートを Dapr に通知します | int |
appProtocol | アプリケーションが使用しているプロトコルを Dapr に通知します。 有効なオプションは http と grpc です。 既定値は http です | 'grpc' 'http' |
enableApiLogging | Dapr サイドカーの API ログ記録を有効にします | bool |
有効 | Dapr 側の車が有効かどうかを示すブール値 | bool |
httpMaxRequestSize | 大きなファイルのアップロードを処理するために、要求本文 http および grpc サーバーパラメーターの最大サイズを MB 単位で増やします。 既定値は 4 MB です。 | int |
httpReadBufferSize | マルチ KB ヘッダーを送信するときに処理する http ヘッダー読み取りバッファーの最大サイズ (KB 単位)。 既定値は 65 KB です。 | int |
logLevel | Dapr サイドカーのログ レベルを設定します。 使用できる値は、デバッグ、情報、警告、エラーです。 既定値は info です。 | 'debug' 'error' 'info' 'warn' |
EnvironmentVar
名前 | 形容 | 価値 |
---|---|---|
名前 | 環境変数の名前。 | 糸 |
secretRef | 環境変数の値をプルするコンテナー アプリ シークレットの名前。 | 糸 |
価値 | シークレット以外の環境変数の値。 | 糸 |
ExtendedLocation
名前 | 形容 | 価値 |
---|---|---|
名前 | 拡張された場所の名前。 | 糸 |
種類 | 拡張された場所の型。 | 'CustomLocation' |
HttpScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | カスタム スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | http スケール ルールを記述するメタデータ プロパティ。 | HttpScaleRuleMetadata を |
HttpScaleRuleMetadata
名前 | 形容 | 価値 |
---|
IdentitySettings
名前 | 形容 | 価値 |
---|---|---|
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | string (必須) |
ライフサイクル | マネージド ID を使用できるコンテナー アプリのライフサイクル ステージを選択するために使用します。 | 'All' 'Init' 'Main' 'None' |
イングレス
名前 | 形容 | 価値 |
---|---|---|
additionalPortMappings | コンテナー アプリで追加のポートを公開するための設定 | IngressPortMapping[] |
allowInsecure | HTTP 接続が許可されているかどうかを示すブール値。 false に設定されている場合、HTTPS 接続に自動的にリダイレクトされます | bool |
clientCertificateMode | mTLS 認証のクライアント証明書モード。 無視は、転送時にサーバーがクライアント証明書を削除することを示します。 Accept は、サーバーがクライアント証明書を転送しますが、クライアント証明書は必要ないことを示します。 Require は、サーバーにクライアント証明書が必要であることを示します。 | 'accept' 'ignore' 'require' |
corsPolicy | コンテナー アプリの CORS ポリシー | CorsPolicy の |
customDomains | Container Apps のホスト名のカスタム ドメイン バインド。 | CustomDomain[] |
exposedPort | イングレスからの TCP トラフィック用のコンテナー内の公開ポート | int |
外 | アプリが外部 http エンドポイントを公開するかどうかを示すブール値 | bool |
ipSecurityRestrictions | 受信 IP アドレスを制限する規則。 | IpSecurityRestrictionRule[] |
stickySessions | 単一リビジョン モードのスティッキー セッション | IngressStickySessions の |
targetPort | イングレスからのトラフィックのコンテナー内のターゲット ポート | int |
targetPortHttpScheme | http アプリが http または https でリッスンするかどうか | 'http' 'https' |
交通 | アプリのリビジョンのトラフィックの重み付け | TrafficWeight[] |
輸送 | イングレス トランスポート プロトコル | 'auto' 'http' 'http2' 'tcp' |
IngressPortMapping
名前 | 形容 | 価値 |
---|---|---|
exposedPort | ターゲット ポートの公開ポートを指定します。 指定しない場合は、既定でターゲット ポートに設定されます | int |
外 | 環境外でアプリ ポートにアクセスできるかどうかを指定します。 | bool (必須) |
targetPort | ユーザーのコンテナーがリッスンするポートを指定します | int (必須) |
IngressStickySessions
名前 | 形容 | 価値 |
---|---|---|
親近感 | スティッキー セッション アフィニティ | 'none' 'sticky' |
InitContainer
名前 | 形容 | 価値 |
---|---|---|
args | コンテナーの開始コマンド引数。 | string[] |
命令 | コンテナーの開始コマンド。 | string[] |
env | コンテナー環境変数。 | EnvironmentVar[] |
画像 | コンテナー イメージ タグ。 | 糸 |
画像タイプ | イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 | 'CloudBuild' 'ContainerImage' |
名前 | カスタム コンテナー名。 | 糸 |
リソース | コンテナー リソースの要件。 | ContainerResources の |
volumeMounts | コンテナー ボリュームのマウント。 | VolumeMount[] |
IpSecurityRestrictionRule
名前 | 形容 | 価値 |
---|---|---|
アクション | 受信 IP を決定する規則を許可または拒否します。 注: ルールは ALL Allow または ALL Deny のみで構成できます | 'Allow' 'Deny' (必須) |
形容 | コンテナー アプリに送信される IP 制限規則について説明します。 これは省略可能なフィールドです。 | 糸 |
ipAddressRange | 受信 IP アドレスと一致する CIDR 表記 | string (必須) |
名前 | IP 制限規則の名前。 | string (必須) |
LoggerSetting
名前 | 形容 | 価値 |
---|---|---|
レベル | 指定したロガーのログ レベル。 | 'debug' 'error' 'info' 'off' 'trace' 'warn' (必須) |
ロガー | ロガー名。 | string (必須) |
ManagedServiceIdentity
名前 | 形容 | 価値 |
---|---|---|
種類 | マネージド サービス ID の種類 (SystemAssigned 型と UserAssigned 型の両方が許可されます)。 | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (必須) |
userAssignedIdentities | リソースに関連付けられているユーザー割り当て ID のセット。 userAssignedIdentities ディクショナリ キーは、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} という形式の ARM リソース ID になります。 ディクショナリ値は、要求内の空のオブジェクト ({}) にすることができます。 | UserAssignedIdentities の |
Microsoft.App/containerApps
名前 | 形容 | 価値 |
---|---|---|
extendedLocation | 拡張された場所の複合型。 | ExtendedLocation の |
同一性 | コード内のシークレットや資格情報を維持することなく、他の Azure サービスと対話するための Container App のマネージド ID。 | ManagedServiceIdentity の |
種類 | 同じ型のリソースに対して異なるエクスペリエンスをレンダリングするために使用されるメタデータ。たとえば、WorkflowApp は一種の Microsoft.App/ContainerApps 型です。 サポートされている場合、リソース プロバイダーはこの値を検証して保持する必要があります。 | 'workflowapp' |
場所 | リソースが存在する地理的な場所 | string (必須) |
managedBy | このリソースを管理するリソースの完全修飾リソース ID。 このリソースが別の Azure リソースによって管理されているかどうかを示します。 これが存在する場合、完全モードのデプロイでは、別のリソースによって管理されているため、テンプレートから削除された場合、リソースは削除されません。 | 糸 |
名前 | リソース名 | string (必須) |
プロパティ | ContainerApp リソース固有のプロパティ | ContainerAppProperties |
タグ | リソース タグ | タグ名と値のディクショナリ。 テンプレート の |
QueueScaleRule
名前 | 形容 | 価値 |
---|---|---|
accountName | ストレージ アカウント名。 マネージド ID を使用して認証する場合は必須 | 糸 |
認証 | キュー スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
queueLength | キューの長さ。 | int |
queueName | キュー名。 | 糸 |
RegistryCredentials
名前 | 形容 | 価値 |
---|---|---|
同一性 | Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します | 糸 |
passwordSecretRef | レジストリ ログイン パスワードを含むシークレットの名前 | 糸 |
サーバー | Container Registry Server | 糸 |
username | Container Registry Username | 糸 |
ランタイム
名前 | 形容 | 価値 |
---|---|---|
dotnet | .NET アプリの構成 | RuntimeDotnet |
ジャワ | Java アプリの構成 | RuntimeJava |
RuntimeDotnet
名前 | 形容 | 価値 |
---|---|---|
autoConfigureDataProtection | ASP.NET Core Data Protection 機能を自動構成する | bool |
RuntimeJava
名前 | 形容 | 価値 |
---|---|---|
enableMetrics | Java アプリの jmx コア メトリックを有効にする | bool |
javaAgent | Java エージェントによって実現される診断機能 | RuntimeJavaAgent |
RuntimeJavaAgent
名前 | 形容 | 価値 |
---|---|---|
有効 | Java アプリの Java エージェントインジェクションを有効にします。 | bool |
伐採 | Java ログ記録シナリオの機能。 | RuntimeJavaAgentLogging |
RuntimeJavaAgentLogging
名前 | 形容 | 価値 |
---|---|---|
loggerSettings | Java アプリのロガーの設定。 | LoggerSetting[] |
規模
名前 | 形容 | 価値 |
---|---|---|
cooldownPeriod | 随意。 KEDA のクールダウン期間。 既定値は、設定されていない場合は 300 秒です。 | int |
maxReplicas | 随意。 コンテナー レプリカの最大数。 既定値は 10 (設定されていない場合) です。 | int |
minReplicas | 随意。 コンテナー レプリカの最小数。 | int |
pollingInterval | 随意。 KEDA ポーリング間隔。 既定値は、設定されていない場合は 30 秒です。 | int |
準則 | スケーリング ルール。 | ScaleRule[] |
ScaleRule
名前 | 形容 | 価値 |
---|---|---|
azureQueue | Azure Queue ベースのスケーリング。 | QueueScaleRule の |
習慣 | カスタム スケール ルール。 | CustomScaleRule の |
http | HTTP 要求ベースのスケーリング。 | HttpScaleRule を |
名前 | スケール ルール名 | 糸 |
tcp | Tcp 要求ベースのスケーリング。 | TcpScaleRule の |
ScaleRuleAuth
名前 | 形容 | 価値 |
---|---|---|
secretRef | 認証パラメーターのプル元のシークレットの名前。 | 糸 |
triggerParameter | シークレットを使用するトリガー パラメーター | 糸 |
秘密
名前 | 形容 | 価値 |
---|---|---|
同一性 | Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。 | 糸 |
keyVaultUrl | コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。 | 糸 |
名前 | シークレット名。 | 糸 |
価値 | シークレット値。 | 糸 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。 |
SecretVolumeItem
名前 | 形容 | 価値 |
---|---|---|
パス | プロジェクト シークレットのパス。 パスが指定されていない場合、path は既定で secretRef にリストされているシークレットの名前になります。 | 糸 |
secretRef | シークレット値のプル元のコンテナー アプリ シークレットの名前。 | 糸 |
サービス
名前 | 形容 | 価値 |
---|---|---|
種類 | Dev ContainerApp サービスの種類 | string (必須) |
ServiceBind
名前 | 形容 | 価値 |
---|---|---|
clientType | サービスへの接続に使用するクライアントの種類 | 糸 |
customizedKeys | 挿入された値をアプリにカスタマイズするためのカスタマイズされたキー | ServiceBindCustomizedKeys |
名前 | サービス バインドの名前 | 糸 |
serviceId | ターゲット サービスのリソース ID | 糸 |
ServiceBindCustomizedKeys
名前 | 形容 | 価値 |
---|
TcpScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | TCP スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | TCP スケール ルールを記述するメタデータ プロパティ。 | TcpScaleRuleMetadata の |
TcpScaleRuleMetadata
名前 | 形容 | 価値 |
---|
テンプレート
名前 | 形容 | 価値 |
---|---|---|
コンテナー | コンテナー アプリのコンテナー定義の一覧。 | コンテナー[] |
initContainers | アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 | InitContainer[] |
revisionSuffix | リビジョン名に追加されるわかりやすいサフィックス | 糸 |
規模 | コンテナー アプリのプロパティのスケーリング。 | スケール |
serviceBinds | アプリにバインドされているコンテナー アプリ サービスの一覧 | ServiceBind[] |
terminationGracePeriodSeconds | コンテナー アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 30 秒です。 | int |
ボリューム | コンテナー アプリのボリューム定義の一覧。 | ボリューム[] |
TrackedResourceTags
名前 | 形容 | 価値 |
---|
TrafficWeight
名前 | 形容 | 価値 |
---|---|---|
ラベル | トラフィック ラベルをリビジョンに関連付けます | 糸 |
latestRevision | トラフィックの重みが最新の安定したリビジョンに属していることを示します | bool |
revisionName | リビジョンの名前 | 糸 |
重量 | リビジョンに割り当てられたトラフィックの重み | int |
UserAssignedIdentities
名前 | 形容 | 価値 |
---|
UserAssignedIdentity
名前 | 形容 | 価値 |
---|
容積
名前 | 形容 | 価値 |
---|---|---|
mountOptions | Azure ファイル共有または NFS Azure ファイル共有のマウント時に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。 | 糸 |
名前 | ボリューム名。 | 糸 |
秘密 | ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 | SecretVolumeItem[] |
storageName | ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。 | 糸 |
storageType | ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 | 'AzureFile' 'EmptyDir' 'NfsAzureFile' 'Secret' 'Smb' |
VolumeMount
名前 | 形容 | 価値 |
---|---|---|
mountPath | ボリュームをマウントするコンテナー内のパス。':' を含めてはなりません。 | 糸 |
subPath | コンテナーのボリュームをマウントするボリューム内のパス。 既定値は "" (ボリュームのルート) です。 | 糸 |
volumeName | これはボリュームの名前と一致する必要があります。 | 糸 |
クイック スタートのサンプル
次のクイック スタート サンプルでは、このリソースの種類をデプロイします。
Bicep ファイル | 形容 |
---|---|
レジストリ を使用してコンテナー アプリと環境を作成する | Azure Container Registry から基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。 |
定義された HTTP スケーリング ルールを使用してコンテナー アプリを作成 | HTTP トラフィックに基づいてスケーリングする基本的なコンテナー アプリを使用して、コンテナー アプリ環境を作成します。 |
Container App Environment 内にコンテナー アプリを作成します | 基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。 |
Container Apps を使用して Dapr マイクロサービス アプリを作成する | Container Apps を使用して Dapr マイクロサービス アプリを作成します。 |
Container Apps を使用して Dapr pub-sub servicebus アプリを作成します | Container Apps を使用して Dapr pub-sub servicebus アプリを作成します。 |
Container App Environment を使用して 2 つのコンテナー アプリを作成します | 基本的なコンテナー アプリを使用して 2 つのコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。 |
VNET を使用して外部コンテナー アプリ環境を作成する | VNET を使用して外部コンテナー アプリ環境を作成します。 |
VNET を使用して内部コンテナー アプリ環境を作成します | VNET を使用して内部コンテナー アプリ環境を作成します。 |
ARM テンプレート リソース定義
containerApps リソースの種類は、次を対象とする操作と共にデプロイできます。
- リソース グループの - リソース グループのデプロイ コマンド 参照
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoft.App/containerApps リソースを作成するには、次の JSON をテンプレートに追加します。
{
"type": "Microsoft.App/containerApps",
"apiVersion": "2024-10-02-preview",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"kind": "string",
"location": "string",
"managedBy": "string",
"properties": {
"configuration": {
"activeRevisionsMode": "string",
"dapr": {
"appId": "string",
"appPort": "int",
"appProtocol": "string",
"enableApiLogging": "bool",
"enabled": "bool",
"httpMaxRequestSize": "int",
"httpReadBufferSize": "int",
"logLevel": "string"
},
"identitySettings": [
{
"identity": "string",
"lifecycle": "string"
}
],
"ingress": {
"additionalPortMappings": [
{
"exposedPort": "int",
"external": "bool",
"targetPort": "int"
}
],
"allowInsecure": "bool",
"clientCertificateMode": "string",
"corsPolicy": {
"allowCredentials": "bool",
"allowedHeaders": [ "string" ],
"allowedMethods": [ "string" ],
"allowedOrigins": [ "string" ],
"exposeHeaders": [ "string" ],
"maxAge": "int"
},
"customDomains": [
{
"bindingType": "string",
"certificateId": "string",
"name": "string"
}
],
"exposedPort": "int",
"external": "bool",
"ipSecurityRestrictions": [
{
"action": "string",
"description": "string",
"ipAddressRange": "string",
"name": "string"
}
],
"stickySessions": {
"affinity": "string"
},
"targetPort": "int",
"targetPortHttpScheme": "string",
"traffic": [
{
"label": "string",
"latestRevision": "bool",
"revisionName": "string",
"weight": "int"
}
],
"transport": "string"
},
"maxInactiveRevisions": "int",
"registries": [
{
"identity": "string",
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"revisionTransitionThreshold": "int",
"runtime": {
"dotnet": {
"autoConfigureDataProtection": "bool"
},
"java": {
"enableMetrics": "bool",
"javaAgent": {
"enabled": "bool",
"logging": {
"loggerSettings": [
{
"level": "string",
"logger": "string"
}
]
}
}
}
},
"secrets": [
{
"identity": "string",
"keyVaultUrl": "string",
"name": "string",
"value": "string"
}
],
"service": {
"type": "string"
},
"targetLabel": "string"
},
"environmentId": "string",
"managedEnvironmentId": "string",
"patchingConfiguration": {
"patchingMode": "string"
},
"template": {
"containers": [
{
"args": [ "string" ],
"command": [ "string" ],
"env": [
{
"name": "string",
"secretRef": "string",
"value": "string"
}
],
"image": "string",
"imageType": "string",
"name": "string",
"probes": [
{
"failureThreshold": "int",
"httpGet": {
"host": "string",
"httpHeaders": [
{
"name": "string",
"value": "string"
}
],
"path": "string",
"port": "int",
"scheme": "string"
},
"initialDelaySeconds": "int",
"periodSeconds": "int",
"successThreshold": "int",
"tcpSocket": {
"host": "string",
"port": "int"
},
"terminationGracePeriodSeconds": "int",
"timeoutSeconds": "int",
"type": "string"
}
],
"resources": {
"cpu": "int",
"gpu": "int",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"subPath": "string",
"volumeName": "string"
}
]
}
],
"initContainers": [
{
"args": [ "string" ],
"command": [ "string" ],
"env": [
{
"name": "string",
"secretRef": "string",
"value": "string"
}
],
"image": "string",
"imageType": "string",
"name": "string",
"resources": {
"cpu": "int",
"gpu": "int",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"subPath": "string",
"volumeName": "string"
}
]
}
],
"revisionSuffix": "string",
"scale": {
"cooldownPeriod": "int",
"maxReplicas": "int",
"minReplicas": "int",
"pollingInterval": "int",
"rules": [
{
"azureQueue": {
"accountName": "string",
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"queueLength": "int",
"queueName": "string"
},
"custom": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {
"{customized property}": "string"
},
"type": "string"
},
"http": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {
"{customized property}": "string"
}
},
"name": "string",
"tcp": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"identity": "string",
"metadata": {
"{customized property}": "string"
}
}
}
]
},
"serviceBinds": [
{
"clientType": "string",
"customizedKeys": {
"{customized property}": "string"
},
"name": "string",
"serviceId": "string"
}
],
"terminationGracePeriodSeconds": "int",
"volumes": [
{
"mountOptions": "string",
"name": "string",
"secrets": [
{
"path": "string",
"secretRef": "string"
}
],
"storageName": "string",
"storageType": "string"
}
]
},
"workloadProfileName": "string"
},
"tags": {
"{customized property}": "string"
}
}
プロパティ値
構成
名前 | 形容 | 価値 |
---|---|---|
activeRevisionsMode | ActiveRevisionsMode は、コンテナー アプリのアクティブなリビジョンの処理方法を制御します。 <リスト><項目>単一: 一度にアクティブにできるのはリビジョンが 1 つだけです。 トラフィックの重みは使用できません。 これが既定値です。</item><項目>複数: オプションのトラフィックの重みとラベルを含む複数のリビジョンをアクティブにすることができます。</item><項目>ラベル: ラベル付きのリビジョンのみがアクティブです。 トラフィックの重みはラベルに適用できます。/list>></item を<する |
'Labels' 'Multiple' 'Single' |
dapr | コンテナー アプリの Dapr 構成。 | Dapr |
identitySettings | コンテナー アプリに割り当てられているマネージド ID のオプション設定。 ここでマネージド ID が指定されていない場合は、既定の設定が使用されます。 | IdentitySettings[] |
イングレス | イングレス構成。 | イングレス |
maxInactiveRevisions | 随意。 コンテナー アプリで使用できる非アクティブなリビジョンの最大数。 | int |
レジストリ | コンテナー アプリによって使用されるコンテナーのプライベート コンテナー レジストリ資格情報のコレクション | RegistryCredentials[] |
revisionTransitionThreshold | 随意。 リビジョン遷移が発生する前に起動する必要があるレプリカの合計数の割合。 既定値は 100 (何も指定しない場合) です。 値は 0 より大きく、100 以下である必要があります。 | int 制約: 最小値 = 1 最大値 = 100 |
実行中 | コンテナー アプリのアプリ ランタイム構成。 | Runtime |
秘密 | コンテナー アプリによって使用されるシークレットのコレクション | シークレット[] |
サービス | コンテナー アプリを開発用 Container App Service にする | サービス |
targetLabel | ラベル変更モードで必要です。 新しく作成されたリビジョンに適用するラベル。 | 糸 |
コンテナ
名前 | 形容 | 価値 |
---|---|---|
args | コンテナーの開始コマンド引数。 | string[] |
命令 | コンテナーの開始コマンド。 | string[] |
env | コンテナー環境変数。 | EnvironmentVar[] |
画像 | コンテナー イメージ タグ。 | 糸 |
画像タイプ | イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 | 'CloudBuild' 'ContainerImage' |
名前 | カスタム コンテナー名。 | 糸 |
プローブ | コンテナーのプローブの一覧。 | ContainerAppProbe[] |
リソース | コンテナー リソースの要件。 | ContainerResources の |
volumeMounts | コンテナー ボリュームのマウント。 | VolumeMount[] |
ContainerAppProbe
名前 | 形容 | 価値 |
---|---|---|
failureThreshold | 成功した後に失敗したと見なされるプローブの連続する最小障害。 既定値は 3 です。 最小値は 1 です。 最大値は 10 です。 | int |
httpGet | HTTPGet は、実行する http 要求を指定します。 | ContainerAppProbeHttpGet の |
initialDelaySeconds | コンテナーが起動してから、liveness プローブが開始されるまでの秒数。 最小値は 1 です。 最大値は 60 です。 | int |
periodSeconds | プローブを実行する頻度 (秒単位)。 既定値は 10 秒です。 最小値は 1 です。 最大値は 240 です。 | int |
successThreshold | 失敗した後にプローブが成功したと見なされる最小連続成功数。 既定値は 1 です。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 最大値は 10 です。 | int |
tcpSocket | TCPSocket は、TCP ポートに関連するアクションを指定します。 TCP フックはまだサポートされていません。 | ContainerAppProbeTcpSocket の |
terminationGracePeriodSeconds | プローブの障害時にポッドを正常に終了する必要がある時間 (秒単位)。 猶予期間は、ポッドで実行されているプロセスが終了シグナルを送信してから数秒で、プロセスが強制終了シグナルで強制的に停止される時間です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 この値が nil の場合、ポッドの terminationGracePeriodSeconds が使用されます。 それ以外の場合、この値はポッド スペックによって提供される値をオーバーライドします。値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 これはアルファ フィールドであり、ProbeTerminationGracePeriod 機能ゲートを有効にする必要があります。 最大値は 3600 秒 (1 時間) です。 | int |
timeoutSeconds | プローブがタイムアウトする秒数。既定値は 1 秒です。 最小値は 1 です。 最大値は 240 です。 | int |
種類 | プローブの種類。 | 'Liveness' 'Readiness' 'Startup' |
ContainerAppProbeHttpGet
名前 | 形容 | 価値 |
---|---|---|
ホスト | 接続先のホスト名。既定ではポッド IP が使用されます。 代わりに httpHeaders で "Host" を設定することをお考えでしょう。 | 糸 |
httpHeaders | 要求で設定するカスタム ヘッダー。 HTTP では、ヘッダーを繰り返し使用できます。 | ContainerAppProbeHttpGetHttpHeadersItem[] |
パス | HTTP サーバー上のアクセスのパス。 | 糸 |
港 | コンテナーでアクセスするポートの名前または番号。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 | int (必須) |
計画 | ホストへの接続に使用するスキーム。 既定値は HTTP です。 | 'HTTP' 'HTTPS' |
ContainerAppProbeHttpGetHttpHeadersItem
名前 | 形容 | 価値 |
---|---|---|
名前 | ヘッダー フィールド名 | string (必須) |
価値 | ヘッダー フィールドの値 | string (必須) |
ContainerAppProbeTcpSocket
名前 | 形容 | 価値 |
---|---|---|
ホスト | 省略可能: 接続先のホスト名。既定ではポッド IP が使用されます。 | 糸 |
港 | コンテナーでアクセスするポートの番号または名前。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 | int (必須) |
ContainerAppProperties
名前 | 形容 | 価値 |
---|---|---|
構成 | バージョン管理されていない Container App 構成プロパティ。 | Configuration |
environmentId | 環境のリソース ID。 | 糸 |
managedEnvironmentId | 廃止。 コンテナー アプリの環境のリソース ID。 | 糸 |
patchingConfiguration | コンテナー アプリの自動修正プログラムの構成。 | ContainerAppPropertiesPatchingConfiguration |
テンプレート | コンテナー アプリのバージョン管理されたアプリケーション定義。 | テンプレート |
workloadProfileName | コンテナー アプリの実行にピン留めするワークロード プロファイル名。 | 糸 |
ContainerAppPropertiesPatchingConfiguration
名前 | 形容 | 価値 |
---|---|---|
patchingMode | コンテナー アプリの修正プログラムの適用モード。 このフィールドの Null または既定値は、RP によって自動として解釈されます。 自動モードでは、使用可能なパッチが自動的に適用されます。 手動モードでは、ユーザーは手動でパッチを適用する必要があります。 無効モードでは、パッチの検出と自動修正が停止されます。 | 'Automatic' 'Disabled' 'Manual' |
ContainerResources
名前 | 形容 | 価値 |
---|---|---|
cpu | コアで必要な CPU (例: 0.5) | int |
gpu | GPU ベースのアプリのコアに必要な GPU (例: 1.0) | int |
記憶 | 必要なメモリ (例: "250Mb" ) | 糸 |
CorsPolicy
名前 | 形容 | 価値 |
---|---|---|
allowCredentials | リソースで資格情報を許可するかどうかを指定します | bool |
allowedHeaders | access-control-allow-headers ヘッダーの内容を指定します | string[] |
allowedMethods | access-control-allow-methods ヘッダーの内容を指定します | string[] |
allowedOrigins | access-control-allow-origins ヘッダーのコンテンツを指定します | string[] (必須) |
exposeHeaders | access-control-expose-headers ヘッダーのコンテンツを指定します | string[] |
maxAge | access-control-max-age ヘッダーのコンテンツを指定します | int |
CustomDomain
名前 | 形容 | 価値 |
---|---|---|
bindingType | カスタム ドメイン バインドの種類。 | 'Auto' 'Disabled' 'SniEnabled' |
certificateId | このホスト名にバインドする証明書のリソース ID。 マネージド環境に存在する必要があります。 | 糸 |
名前 | ホスト名。 | string (必須) |
CustomScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | カスタム スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | カスタム スケール ルールを記述するメタデータ プロパティ。 | CustomScaleRuleMetadata を |
種類 | カスタム スケール ルールの種類 例: azure-servicebus、redis など。 |
糸 |
CustomScaleRuleMetadata
名前 | 形容 | 価値 |
---|
Dapr
名前 | 形容 | 価値 |
---|---|---|
appId | Dapr アプリケーション識別子 | 糸 |
appPort | アプリケーションがリッスンしているポートを Dapr に通知します | int |
appProtocol | アプリケーションが使用しているプロトコルを Dapr に通知します。 有効なオプションは http と grpc です。 既定値は http です | 'grpc' 'http' |
enableApiLogging | Dapr サイドカーの API ログ記録を有効にします | bool |
有効 | Dapr 側の車が有効かどうかを示すブール値 | bool |
httpMaxRequestSize | 大きなファイルのアップロードを処理するために、要求本文 http および grpc サーバーパラメーターの最大サイズを MB 単位で増やします。 既定値は 4 MB です。 | int |
httpReadBufferSize | マルチ KB ヘッダーを送信するときに処理する http ヘッダー読み取りバッファーの最大サイズ (KB 単位)。 既定値は 65 KB です。 | int |
logLevel | Dapr サイドカーのログ レベルを設定します。 使用できる値は、デバッグ、情報、警告、エラーです。 既定値は info です。 | 'debug' 'error' 'info' 'warn' |
EnvironmentVar
名前 | 形容 | 価値 |
---|---|---|
名前 | 環境変数の名前。 | 糸 |
secretRef | 環境変数の値をプルするコンテナー アプリ シークレットの名前。 | 糸 |
価値 | シークレット以外の環境変数の値。 | 糸 |
ExtendedLocation
名前 | 形容 | 価値 |
---|---|---|
名前 | 拡張された場所の名前。 | 糸 |
種類 | 拡張された場所の型。 | 'CustomLocation' |
HttpScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | カスタム スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | http スケール ルールを記述するメタデータ プロパティ。 | HttpScaleRuleMetadata を |
HttpScaleRuleMetadata
名前 | 形容 | 価値 |
---|
IdentitySettings
名前 | 形容 | 価値 |
---|---|---|
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | string (必須) |
ライフサイクル | マネージド ID を使用できるコンテナー アプリのライフサイクル ステージを選択するために使用します。 | 'All' 'Init' 'Main' 'None' |
イングレス
名前 | 形容 | 価値 |
---|---|---|
additionalPortMappings | コンテナー アプリで追加のポートを公開するための設定 | IngressPortMapping[] |
allowInsecure | HTTP 接続が許可されているかどうかを示すブール値。 false に設定されている場合、HTTPS 接続に自動的にリダイレクトされます | bool |
clientCertificateMode | mTLS 認証のクライアント証明書モード。 無視は、転送時にサーバーがクライアント証明書を削除することを示します。 Accept は、サーバーがクライアント証明書を転送しますが、クライアント証明書は必要ないことを示します。 Require は、サーバーにクライアント証明書が必要であることを示します。 | 'accept' 'ignore' 'require' |
corsPolicy | コンテナー アプリの CORS ポリシー | CorsPolicy の |
customDomains | Container Apps のホスト名のカスタム ドメイン バインド。 | CustomDomain[] |
exposedPort | イングレスからの TCP トラフィック用のコンテナー内の公開ポート | int |
外 | アプリが外部 http エンドポイントを公開するかどうかを示すブール値 | bool |
ipSecurityRestrictions | 受信 IP アドレスを制限する規則。 | IpSecurityRestrictionRule[] |
stickySessions | 単一リビジョン モードのスティッキー セッション | IngressStickySessions の |
targetPort | イングレスからのトラフィックのコンテナー内のターゲット ポート | int |
targetPortHttpScheme | http アプリが http または https でリッスンするかどうか | 'http' 'https' |
交通 | アプリのリビジョンのトラフィックの重み付け | TrafficWeight[] |
輸送 | イングレス トランスポート プロトコル | 'auto' 'http' 'http2' 'tcp' |
IngressPortMapping
名前 | 形容 | 価値 |
---|---|---|
exposedPort | ターゲット ポートの公開ポートを指定します。 指定しない場合は、既定でターゲット ポートに設定されます | int |
外 | 環境外でアプリ ポートにアクセスできるかどうかを指定します。 | bool (必須) |
targetPort | ユーザーのコンテナーがリッスンするポートを指定します | int (必須) |
IngressStickySessions
名前 | 形容 | 価値 |
---|---|---|
親近感 | スティッキー セッション アフィニティ | 'none' 'sticky' |
InitContainer
名前 | 形容 | 価値 |
---|---|---|
args | コンテナーの開始コマンド引数。 | string[] |
命令 | コンテナーの開始コマンド。 | string[] |
env | コンテナー環境変数。 | EnvironmentVar[] |
画像 | コンテナー イメージ タグ。 | 糸 |
画像タイプ | イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 | 'CloudBuild' 'ContainerImage' |
名前 | カスタム コンテナー名。 | 糸 |
リソース | コンテナー リソースの要件。 | ContainerResources の |
volumeMounts | コンテナー ボリュームのマウント。 | VolumeMount[] |
IpSecurityRestrictionRule
名前 | 形容 | 価値 |
---|---|---|
アクション | 受信 IP を決定する規則を許可または拒否します。 注: ルールは ALL Allow または ALL Deny のみで構成できます | 'Allow' 'Deny' (必須) |
形容 | コンテナー アプリに送信される IP 制限規則について説明します。 これは省略可能なフィールドです。 | 糸 |
ipAddressRange | 受信 IP アドレスと一致する CIDR 表記 | string (必須) |
名前 | IP 制限規則の名前。 | string (必須) |
LoggerSetting
名前 | 形容 | 価値 |
---|---|---|
レベル | 指定したロガーのログ レベル。 | 'debug' 'error' 'info' 'off' 'trace' 'warn' (必須) |
ロガー | ロガー名。 | string (必須) |
ManagedServiceIdentity
名前 | 形容 | 価値 |
---|---|---|
種類 | マネージド サービス ID の種類 (SystemAssigned 型と UserAssigned 型の両方が許可されます)。 | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (必須) |
userAssignedIdentities | リソースに関連付けられているユーザー割り当て ID のセット。 userAssignedIdentities ディクショナリ キーは、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} という形式の ARM リソース ID になります。 ディクショナリ値は、要求内の空のオブジェクト ({}) にすることができます。 | UserAssignedIdentities の |
Microsoft.App/containerApps
名前 | 形容 | 価値 |
---|---|---|
apiVersion | API のバージョン | '2024-10-02-preview' |
extendedLocation | 拡張された場所の複合型。 | ExtendedLocation の |
同一性 | コード内のシークレットや資格情報を維持することなく、他の Azure サービスと対話するための Container App のマネージド ID。 | ManagedServiceIdentity の |
種類 | 同じ型のリソースに対して異なるエクスペリエンスをレンダリングするために使用されるメタデータ。たとえば、WorkflowApp は一種の Microsoft.App/ContainerApps 型です。 サポートされている場合、リソース プロバイダーはこの値を検証して保持する必要があります。 | 'workflowapp' |
場所 | リソースが存在する地理的な場所 | string (必須) |
managedBy | このリソースを管理するリソースの完全修飾リソース ID。 このリソースが別の Azure リソースによって管理されているかどうかを示します。 これが存在する場合、完全モードのデプロイでは、別のリソースによって管理されているため、テンプレートから削除された場合、リソースは削除されません。 | 糸 |
名前 | リソース名 | string (必須) |
プロパティ | ContainerApp リソース固有のプロパティ | ContainerAppProperties |
タグ | リソース タグ | タグ名と値のディクショナリ。 テンプレート の |
種類 | リソースの種類 | 'Microsoft.App/containerApps' |
QueueScaleRule
名前 | 形容 | 価値 |
---|---|---|
accountName | ストレージ アカウント名。 マネージド ID を使用して認証する場合は必須 | 糸 |
認証 | キュー スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
queueLength | キューの長さ。 | int |
queueName | キュー名。 | 糸 |
RegistryCredentials
名前 | 形容 | 価値 |
---|---|---|
同一性 | Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します | 糸 |
passwordSecretRef | レジストリ ログイン パスワードを含むシークレットの名前 | 糸 |
サーバー | Container Registry Server | 糸 |
username | Container Registry Username | 糸 |
ランタイム
名前 | 形容 | 価値 |
---|---|---|
dotnet | .NET アプリの構成 | RuntimeDotnet |
ジャワ | Java アプリの構成 | RuntimeJava |
RuntimeDotnet
名前 | 形容 | 価値 |
---|---|---|
autoConfigureDataProtection | ASP.NET Core Data Protection 機能を自動構成する | bool |
RuntimeJava
名前 | 形容 | 価値 |
---|---|---|
enableMetrics | Java アプリの jmx コア メトリックを有効にする | bool |
javaAgent | Java エージェントによって実現される診断機能 | RuntimeJavaAgent |
RuntimeJavaAgent
名前 | 形容 | 価値 |
---|---|---|
有効 | Java アプリの Java エージェントインジェクションを有効にします。 | bool |
伐採 | Java ログ記録シナリオの機能。 | RuntimeJavaAgentLogging |
RuntimeJavaAgentLogging
名前 | 形容 | 価値 |
---|---|---|
loggerSettings | Java アプリのロガーの設定。 | LoggerSetting[] |
規模
名前 | 形容 | 価値 |
---|---|---|
cooldownPeriod | 随意。 KEDA のクールダウン期間。 既定値は、設定されていない場合は 300 秒です。 | int |
maxReplicas | 随意。 コンテナー レプリカの最大数。 既定値は 10 (設定されていない場合) です。 | int |
minReplicas | 随意。 コンテナー レプリカの最小数。 | int |
pollingInterval | 随意。 KEDA ポーリング間隔。 既定値は、設定されていない場合は 30 秒です。 | int |
準則 | スケーリング ルール。 | ScaleRule[] |
ScaleRule
名前 | 形容 | 価値 |
---|---|---|
azureQueue | Azure Queue ベースのスケーリング。 | QueueScaleRule の |
習慣 | カスタム スケール ルール。 | CustomScaleRule の |
http | HTTP 要求ベースのスケーリング。 | HttpScaleRule を |
名前 | スケール ルール名 | 糸 |
tcp | Tcp 要求ベースのスケーリング。 | TcpScaleRule の |
ScaleRuleAuth
名前 | 形容 | 価値 |
---|---|---|
secretRef | 認証パラメーターのプル元のシークレットの名前。 | 糸 |
triggerParameter | シークレットを使用するトリガー パラメーター | 糸 |
秘密
名前 | 形容 | 価値 |
---|---|---|
同一性 | Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。 | 糸 |
keyVaultUrl | コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。 | 糸 |
名前 | シークレット名。 | 糸 |
価値 | シークレット値。 | 糸 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。 |
SecretVolumeItem
名前 | 形容 | 価値 |
---|---|---|
パス | プロジェクト シークレットのパス。 パスが指定されていない場合、path は既定で secretRef にリストされているシークレットの名前になります。 | 糸 |
secretRef | シークレット値のプル元のコンテナー アプリ シークレットの名前。 | 糸 |
サービス
名前 | 形容 | 価値 |
---|---|---|
種類 | Dev ContainerApp サービスの種類 | string (必須) |
ServiceBind
名前 | 形容 | 価値 |
---|---|---|
clientType | サービスへの接続に使用するクライアントの種類 | 糸 |
customizedKeys | 挿入された値をアプリにカスタマイズするためのカスタマイズされたキー | ServiceBindCustomizedKeys |
名前 | サービス バインドの名前 | 糸 |
serviceId | ターゲット サービスのリソース ID | 糸 |
ServiceBindCustomizedKeys
名前 | 形容 | 価値 |
---|
TcpScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | TCP スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | TCP スケール ルールを記述するメタデータ プロパティ。 | TcpScaleRuleMetadata の |
TcpScaleRuleMetadata
名前 | 形容 | 価値 |
---|
テンプレート
名前 | 形容 | 価値 |
---|---|---|
コンテナー | コンテナー アプリのコンテナー定義の一覧。 | コンテナー[] |
initContainers | アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 | InitContainer[] |
revisionSuffix | リビジョン名に追加されるわかりやすいサフィックス | 糸 |
規模 | コンテナー アプリのプロパティのスケーリング。 | スケール |
serviceBinds | アプリにバインドされているコンテナー アプリ サービスの一覧 | ServiceBind[] |
terminationGracePeriodSeconds | コンテナー アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 30 秒です。 | int |
ボリューム | コンテナー アプリのボリューム定義の一覧。 | ボリューム[] |
TrackedResourceTags
名前 | 形容 | 価値 |
---|
TrafficWeight
名前 | 形容 | 価値 |
---|---|---|
ラベル | トラフィック ラベルをリビジョンに関連付けます | 糸 |
latestRevision | トラフィックの重みが最新の安定したリビジョンに属していることを示します | bool |
revisionName | リビジョンの名前 | 糸 |
重量 | リビジョンに割り当てられたトラフィックの重み | int |
UserAssignedIdentities
名前 | 形容 | 価値 |
---|
UserAssignedIdentity
名前 | 形容 | 価値 |
---|
容積
名前 | 形容 | 価値 |
---|---|---|
mountOptions | Azure ファイル共有または NFS Azure ファイル共有のマウント時に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。 | 糸 |
名前 | ボリューム名。 | 糸 |
秘密 | ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 | SecretVolumeItem[] |
storageName | ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。 | 糸 |
storageType | ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 | 'AzureFile' 'EmptyDir' 'NfsAzureFile' 'Secret' 'Smb' |
VolumeMount
名前 | 形容 | 価値 |
---|---|---|
mountPath | ボリュームをマウントするコンテナー内のパス。':' を含めてはなりません。 | 糸 |
subPath | コンテナーのボリュームをマウントするボリューム内のパス。 既定値は "" (ボリュームのルート) です。 | 糸 |
volumeName | これはボリュームの名前と一致する必要があります。 | 糸 |
クイック スタート テンプレート
次のクイック スタート テンプレートでは、このリソースの種類をデプロイします。
テンプレート | 形容 |
---|---|
レジストリ を使用してコンテナー アプリと環境を作成する Azure にデプロイする |
Azure Container Registry から基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。 |
定義された HTTP スケーリング ルールを使用してコンテナー アプリを作成 Azure にデプロイする |
HTTP トラフィックに基づいてスケーリングする基本的なコンテナー アプリを使用して、コンテナー アプリ環境を作成します。 |
Container App Environment 内にコンテナー アプリを作成します Azure にデプロイする |
基本的なコンテナー アプリを使用してコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。 |
Container Apps を使用して Dapr マイクロサービス アプリを作成する Azure にデプロイする |
Container Apps を使用して Dapr マイクロサービス アプリを作成します。 |
Container Apps を使用して Dapr pub-sub servicebus アプリを作成します Azure にデプロイする |
Container Apps を使用して Dapr pub-sub servicebus アプリを作成します。 |
Container App Environment を使用して 2 つのコンテナー アプリを作成します Azure にデプロイする |
基本的なコンテナー アプリを使用して 2 つのコンテナー アプリ環境を作成します。 また、Log Analytics ワークスペースをデプロイしてログを格納します。 |
VNET を使用して外部コンテナー アプリ環境を作成する Azure にデプロイする |
VNET を使用して外部コンテナー アプリ環境を作成します。 |
VNET を使用して内部コンテナー アプリ環境を作成します Azure にデプロイする |
VNET を使用して内部コンテナー アプリ環境を作成します。 |
Terraform (AzAPI プロバイダー) リソース定義
containerApps リソースの種類は、次を対象とする操作と共にデプロイできます。
- リソース グループの
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoft.App/containerApps リソースを作成するには、次の Terraform をテンプレートに追加します。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/containerApps@2024-10-02-preview"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
kind = "string"
location = "string"
managedBy = "string"
tags = {
{customized property} = "string"
}
body = jsonencode({
extendedLocation = {
name = "string"
type = "string"
}
properties = {
configuration = {
activeRevisionsMode = "string"
dapr = {
appId = "string"
appPort = int
appProtocol = "string"
enableApiLogging = bool
enabled = bool
httpMaxRequestSize = int
httpReadBufferSize = int
logLevel = "string"
}
identitySettings = [
{
identity = "string"
lifecycle = "string"
}
]
ingress = {
additionalPortMappings = [
{
exposedPort = int
external = bool
targetPort = int
}
]
allowInsecure = bool
clientCertificateMode = "string"
corsPolicy = {
allowCredentials = bool
allowedHeaders = [
"string"
]
allowedMethods = [
"string"
]
allowedOrigins = [
"string"
]
exposeHeaders = [
"string"
]
maxAge = int
}
customDomains = [
{
bindingType = "string"
certificateId = "string"
name = "string"
}
]
exposedPort = int
external = bool
ipSecurityRestrictions = [
{
action = "string"
description = "string"
ipAddressRange = "string"
name = "string"
}
]
stickySessions = {
affinity = "string"
}
targetPort = int
targetPortHttpScheme = "string"
traffic = [
{
label = "string"
latestRevision = bool
revisionName = "string"
weight = int
}
]
transport = "string"
}
maxInactiveRevisions = int
registries = [
{
identity = "string"
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
revisionTransitionThreshold = int
runtime = {
dotnet = {
autoConfigureDataProtection = bool
}
java = {
enableMetrics = bool
javaAgent = {
enabled = bool
logging = {
loggerSettings = [
{
level = "string"
logger = "string"
}
]
}
}
}
}
secrets = [
{
identity = "string"
keyVaultUrl = "string"
name = "string"
value = "string"
}
]
service = {
type = "string"
}
targetLabel = "string"
}
environmentId = "string"
managedEnvironmentId = "string"
patchingConfiguration = {
patchingMode = "string"
}
template = {
containers = [
{
args = [
"string"
]
command = [
"string"
]
env = [
{
name = "string"
secretRef = "string"
value = "string"
}
]
image = "string"
imageType = "string"
name = "string"
probes = [
{
failureThreshold = int
httpGet = {
host = "string"
httpHeaders = [
{
name = "string"
value = "string"
}
]
path = "string"
port = int
scheme = "string"
}
initialDelaySeconds = int
periodSeconds = int
successThreshold = int
tcpSocket = {
host = "string"
port = int
}
terminationGracePeriodSeconds = int
timeoutSeconds = int
type = "string"
}
]
resources = {
cpu = int
gpu = int
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
subPath = "string"
volumeName = "string"
}
]
}
]
initContainers = [
{
args = [
"string"
]
command = [
"string"
]
env = [
{
name = "string"
secretRef = "string"
value = "string"
}
]
image = "string"
imageType = "string"
name = "string"
resources = {
cpu = int
gpu = int
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
subPath = "string"
volumeName = "string"
}
]
}
]
revisionSuffix = "string"
scale = {
cooldownPeriod = int
maxReplicas = int
minReplicas = int
pollingInterval = int
rules = [
{
azureQueue = {
accountName = "string"
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
queueLength = int
queueName = "string"
}
custom = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = {
{customized property} = "string"
}
type = "string"
}
http = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = {
{customized property} = "string"
}
}
name = "string"
tcp = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
identity = "string"
metadata = {
{customized property} = "string"
}
}
}
]
}
serviceBinds = [
{
clientType = "string"
customizedKeys = {
{customized property} = "string"
}
name = "string"
serviceId = "string"
}
]
terminationGracePeriodSeconds = int
volumes = [
{
mountOptions = "string"
name = "string"
secrets = [
{
path = "string"
secretRef = "string"
}
]
storageName = "string"
storageType = "string"
}
]
}
workloadProfileName = "string"
}
})
}
プロパティ値
構成
名前 | 形容 | 価値 |
---|---|---|
activeRevisionsMode | ActiveRevisionsMode は、コンテナー アプリのアクティブなリビジョンの処理方法を制御します。 <リスト><項目>単一: 一度にアクティブにできるのはリビジョンが 1 つだけです。 トラフィックの重みは使用できません。 これが既定値です。</item><項目>複数: オプションのトラフィックの重みとラベルを含む複数のリビジョンをアクティブにすることができます。</item><項目>ラベル: ラベル付きのリビジョンのみがアクティブです。 トラフィックの重みはラベルに適用できます。/list>></item を<する |
'Labels' 'Multiple' 'Single' |
dapr | コンテナー アプリの Dapr 構成。 | Dapr |
identitySettings | コンテナー アプリに割り当てられているマネージド ID のオプション設定。 ここでマネージド ID が指定されていない場合は、既定の設定が使用されます。 | IdentitySettings[] |
イングレス | イングレス構成。 | イングレス |
maxInactiveRevisions | 随意。 コンテナー アプリで使用できる非アクティブなリビジョンの最大数。 | int |
レジストリ | コンテナー アプリによって使用されるコンテナーのプライベート コンテナー レジストリ資格情報のコレクション | RegistryCredentials[] |
revisionTransitionThreshold | 随意。 リビジョン遷移が発生する前に起動する必要があるレプリカの合計数の割合。 既定値は 100 (何も指定しない場合) です。 値は 0 より大きく、100 以下である必要があります。 | int 制約: 最小値 = 1 最大値 = 100 |
実行中 | コンテナー アプリのアプリ ランタイム構成。 | Runtime |
秘密 | コンテナー アプリによって使用されるシークレットのコレクション | シークレット[] |
サービス | コンテナー アプリを開発用 Container App Service にする | サービス |
targetLabel | ラベル変更モードで必要です。 新しく作成されたリビジョンに適用するラベル。 | 糸 |
コンテナ
名前 | 形容 | 価値 |
---|---|---|
args | コンテナーの開始コマンド引数。 | string[] |
命令 | コンテナーの開始コマンド。 | string[] |
env | コンテナー環境変数。 | EnvironmentVar[] |
画像 | コンテナー イメージ タグ。 | 糸 |
画像タイプ | イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 | 'CloudBuild' 'ContainerImage' |
名前 | カスタム コンテナー名。 | 糸 |
プローブ | コンテナーのプローブの一覧。 | ContainerAppProbe[] |
リソース | コンテナー リソースの要件。 | ContainerResources の |
volumeMounts | コンテナー ボリュームのマウント。 | VolumeMount[] |
ContainerAppProbe
名前 | 形容 | 価値 |
---|---|---|
failureThreshold | 成功した後に失敗したと見なされるプローブの連続する最小障害。 既定値は 3 です。 最小値は 1 です。 最大値は 10 です。 | int |
httpGet | HTTPGet は、実行する http 要求を指定します。 | ContainerAppProbeHttpGet の |
initialDelaySeconds | コンテナーが起動してから、liveness プローブが開始されるまでの秒数。 最小値は 1 です。 最大値は 60 です。 | int |
periodSeconds | プローブを実行する頻度 (秒単位)。 既定値は 10 秒です。 最小値は 1 です。 最大値は 240 です。 | int |
successThreshold | 失敗した後にプローブが成功したと見なされる最小連続成功数。 既定値は 1 です。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 最大値は 10 です。 | int |
tcpSocket | TCPSocket は、TCP ポートに関連するアクションを指定します。 TCP フックはまだサポートされていません。 | ContainerAppProbeTcpSocket の |
terminationGracePeriodSeconds | プローブの障害時にポッドを正常に終了する必要がある時間 (秒単位)。 猶予期間は、ポッドで実行されているプロセスが終了シグナルを送信してから数秒で、プロセスが強制終了シグナルで強制的に停止される時間です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 この値が nil の場合、ポッドの terminationGracePeriodSeconds が使用されます。 それ以外の場合、この値はポッド スペックによって提供される値をオーバーライドします。値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 これはアルファ フィールドであり、ProbeTerminationGracePeriod 機能ゲートを有効にする必要があります。 最大値は 3600 秒 (1 時間) です。 | int |
timeoutSeconds | プローブがタイムアウトする秒数。既定値は 1 秒です。 最小値は 1 です。 最大値は 240 です。 | int |
種類 | プローブの種類。 | 'Liveness' 'Readiness' 'Startup' |
ContainerAppProbeHttpGet
名前 | 形容 | 価値 |
---|---|---|
ホスト | 接続先のホスト名。既定ではポッド IP が使用されます。 代わりに httpHeaders で "Host" を設定することをお考えでしょう。 | 糸 |
httpHeaders | 要求で設定するカスタム ヘッダー。 HTTP では、ヘッダーを繰り返し使用できます。 | ContainerAppProbeHttpGetHttpHeadersItem[] |
パス | HTTP サーバー上のアクセスのパス。 | 糸 |
港 | コンテナーでアクセスするポートの名前または番号。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 | int (必須) |
計画 | ホストへの接続に使用するスキーム。 既定値は HTTP です。 | 'HTTP' 'HTTPS' |
ContainerAppProbeHttpGetHttpHeadersItem
名前 | 形容 | 価値 |
---|---|---|
名前 | ヘッダー フィールド名 | string (必須) |
価値 | ヘッダー フィールドの値 | string (必須) |
ContainerAppProbeTcpSocket
名前 | 形容 | 価値 |
---|---|---|
ホスト | 省略可能: 接続先のホスト名。既定ではポッド IP が使用されます。 | 糸 |
港 | コンテナーでアクセスするポートの番号または名前。 数値は 1 ~ 65535 の範囲である必要があります。 名前はIANA_SVC_NAMEである必要があります。 | int (必須) |
ContainerAppProperties
名前 | 形容 | 価値 |
---|---|---|
構成 | バージョン管理されていない Container App 構成プロパティ。 | Configuration |
environmentId | 環境のリソース ID。 | 糸 |
managedEnvironmentId | 廃止。 コンテナー アプリの環境のリソース ID。 | 糸 |
patchingConfiguration | コンテナー アプリの自動修正プログラムの構成。 | ContainerAppPropertiesPatchingConfiguration |
テンプレート | コンテナー アプリのバージョン管理されたアプリケーション定義。 | テンプレート |
workloadProfileName | コンテナー アプリの実行にピン留めするワークロード プロファイル名。 | 糸 |
ContainerAppPropertiesPatchingConfiguration
名前 | 形容 | 価値 |
---|---|---|
patchingMode | コンテナー アプリの修正プログラムの適用モード。 このフィールドの Null または既定値は、RP によって自動として解釈されます。 自動モードでは、使用可能なパッチが自動的に適用されます。 手動モードでは、ユーザーは手動でパッチを適用する必要があります。 無効モードでは、パッチの検出と自動修正が停止されます。 | 'Automatic' 'Disabled' 'Manual' |
ContainerResources
名前 | 形容 | 価値 |
---|---|---|
cpu | コアで必要な CPU (例: 0.5) | int |
gpu | GPU ベースのアプリのコアに必要な GPU (例: 1.0) | int |
記憶 | 必要なメモリ (例: "250Mb" ) | 糸 |
CorsPolicy
名前 | 形容 | 価値 |
---|---|---|
allowCredentials | リソースで資格情報を許可するかどうかを指定します | bool |
allowedHeaders | access-control-allow-headers ヘッダーの内容を指定します | string[] |
allowedMethods | access-control-allow-methods ヘッダーの内容を指定します | string[] |
allowedOrigins | access-control-allow-origins ヘッダーのコンテンツを指定します | string[] (必須) |
exposeHeaders | access-control-expose-headers ヘッダーのコンテンツを指定します | string[] |
maxAge | access-control-max-age ヘッダーのコンテンツを指定します | int |
CustomDomain
名前 | 形容 | 価値 |
---|---|---|
bindingType | カスタム ドメイン バインドの種類。 | 'Auto' 'Disabled' 'SniEnabled' |
certificateId | このホスト名にバインドする証明書のリソース ID。 マネージド環境に存在する必要があります。 | 糸 |
名前 | ホスト名。 | string (必須) |
CustomScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | カスタム スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | カスタム スケール ルールを記述するメタデータ プロパティ。 | CustomScaleRuleMetadata を |
種類 | カスタム スケール ルールの種類 例: azure-servicebus、redis など。 |
糸 |
CustomScaleRuleMetadata
名前 | 形容 | 価値 |
---|
Dapr
名前 | 形容 | 価値 |
---|---|---|
appId | Dapr アプリケーション識別子 | 糸 |
appPort | アプリケーションがリッスンしているポートを Dapr に通知します | int |
appProtocol | アプリケーションが使用しているプロトコルを Dapr に通知します。 有効なオプションは http と grpc です。 既定値は http です | 'grpc' 'http' |
enableApiLogging | Dapr サイドカーの API ログ記録を有効にします | bool |
有効 | Dapr 側の車が有効かどうかを示すブール値 | bool |
httpMaxRequestSize | 大きなファイルのアップロードを処理するために、要求本文 http および grpc サーバーパラメーターの最大サイズを MB 単位で増やします。 既定値は 4 MB です。 | int |
httpReadBufferSize | マルチ KB ヘッダーを送信するときに処理する http ヘッダー読み取りバッファーの最大サイズ (KB 単位)。 既定値は 65 KB です。 | int |
logLevel | Dapr サイドカーのログ レベルを設定します。 使用できる値は、デバッグ、情報、警告、エラーです。 既定値は info です。 | 'debug' 'error' 'info' 'warn' |
EnvironmentVar
名前 | 形容 | 価値 |
---|---|---|
名前 | 環境変数の名前。 | 糸 |
secretRef | 環境変数の値をプルするコンテナー アプリ シークレットの名前。 | 糸 |
価値 | シークレット以外の環境変数の値。 | 糸 |
ExtendedLocation
名前 | 形容 | 価値 |
---|---|---|
名前 | 拡張された場所の名前。 | 糸 |
種類 | 拡張された場所の型。 | 'CustomLocation' |
HttpScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | カスタム スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | http スケール ルールを記述するメタデータ プロパティ。 | HttpScaleRuleMetadata を |
HttpScaleRuleMetadata
名前 | 形容 | 価値 |
---|
IdentitySettings
名前 | 形容 | 価値 |
---|---|---|
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | string (必須) |
ライフサイクル | マネージド ID を使用できるコンテナー アプリのライフサイクル ステージを選択するために使用します。 | 'All' 'Init' 'Main' 'None' |
イングレス
名前 | 形容 | 価値 |
---|---|---|
additionalPortMappings | コンテナー アプリで追加のポートを公開するための設定 | IngressPortMapping[] |
allowInsecure | HTTP 接続が許可されているかどうかを示すブール値。 false に設定されている場合、HTTPS 接続に自動的にリダイレクトされます | bool |
clientCertificateMode | mTLS 認証のクライアント証明書モード。 無視は、転送時にサーバーがクライアント証明書を削除することを示します。 Accept は、サーバーがクライアント証明書を転送しますが、クライアント証明書は必要ないことを示します。 Require は、サーバーにクライアント証明書が必要であることを示します。 | 'accept' 'ignore' 'require' |
corsPolicy | コンテナー アプリの CORS ポリシー | CorsPolicy の |
customDomains | Container Apps のホスト名のカスタム ドメイン バインド。 | CustomDomain[] |
exposedPort | イングレスからの TCP トラフィック用のコンテナー内の公開ポート | int |
外 | アプリが外部 http エンドポイントを公開するかどうかを示すブール値 | bool |
ipSecurityRestrictions | 受信 IP アドレスを制限する規則。 | IpSecurityRestrictionRule[] |
stickySessions | 単一リビジョン モードのスティッキー セッション | IngressStickySessions の |
targetPort | イングレスからのトラフィックのコンテナー内のターゲット ポート | int |
targetPortHttpScheme | http アプリが http または https でリッスンするかどうか | 'http' 'https' |
交通 | アプリのリビジョンのトラフィックの重み付け | TrafficWeight[] |
輸送 | イングレス トランスポート プロトコル | 'auto' 'http' 'http2' 'tcp' |
IngressPortMapping
名前 | 形容 | 価値 |
---|---|---|
exposedPort | ターゲット ポートの公開ポートを指定します。 指定しない場合は、既定でターゲット ポートに設定されます | int |
外 | 環境外でアプリ ポートにアクセスできるかどうかを指定します。 | bool (必須) |
targetPort | ユーザーのコンテナーがリッスンするポートを指定します | int (必須) |
IngressStickySessions
名前 | 形容 | 価値 |
---|---|---|
親近感 | スティッキー セッション アフィニティ | 'none' 'sticky' |
InitContainer
名前 | 形容 | 価値 |
---|---|---|
args | コンテナーの開始コマンド引数。 | string[] |
命令 | コンテナーの開始コマンド。 | string[] |
env | コンテナー環境変数。 | EnvironmentVar[] |
画像 | コンテナー イメージ タグ。 | 糸 |
画像タイプ | イメージの種類。 CloudBuild に設定すると、イメージがシステムによって管理され、ユーザーはイメージ フィールドを介してイメージを更新できなくなります。 ユーザー指定のイメージの ContainerImage に設定します。 | 'CloudBuild' 'ContainerImage' |
名前 | カスタム コンテナー名。 | 糸 |
リソース | コンテナー リソースの要件。 | ContainerResources の |
volumeMounts | コンテナー ボリュームのマウント。 | VolumeMount[] |
IpSecurityRestrictionRule
名前 | 形容 | 価値 |
---|---|---|
アクション | 受信 IP を決定する規則を許可または拒否します。 注: ルールは ALL Allow または ALL Deny のみで構成できます | 'Allow' 'Deny' (必須) |
形容 | コンテナー アプリに送信される IP 制限規則について説明します。 これは省略可能なフィールドです。 | 糸 |
ipAddressRange | 受信 IP アドレスと一致する CIDR 表記 | string (必須) |
名前 | IP 制限規則の名前。 | string (必須) |
LoggerSetting
名前 | 形容 | 価値 |
---|---|---|
レベル | 指定したロガーのログ レベル。 | 'debug' 'error' 'info' 'off' 'trace' 'warn' (必須) |
ロガー | ロガー名。 | string (必須) |
ManagedServiceIdentity
名前 | 形容 | 価値 |
---|---|---|
種類 | マネージド サービス ID の種類 (SystemAssigned 型と UserAssigned 型の両方が許可されます)。 | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (必須) |
userAssignedIdentities | リソースに関連付けられているユーザー割り当て ID のセット。 userAssignedIdentities ディクショナリ キーは、'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} という形式の ARM リソース ID になります。 ディクショナリ値は、要求内の空のオブジェクト ({}) にすることができます。 | UserAssignedIdentities の |
Microsoft.App/containerApps
名前 | 形容 | 価値 |
---|---|---|
extendedLocation | 拡張された場所の複合型。 | ExtendedLocation の |
同一性 | コード内のシークレットや資格情報を維持することなく、他の Azure サービスと対話するための Container App のマネージド ID。 | ManagedServiceIdentity の |
種類 | 同じ型のリソースに対して異なるエクスペリエンスをレンダリングするために使用されるメタデータ。たとえば、WorkflowApp は一種の Microsoft.App/ContainerApps 型です。 サポートされている場合、リソース プロバイダーはこの値を検証して保持する必要があります。 | 'workflowapp' |
場所 | リソースが存在する地理的な場所 | string (必須) |
managedBy | このリソースを管理するリソースの完全修飾リソース ID。 このリソースが別の Azure リソースによって管理されているかどうかを示します。 これが存在する場合、完全モードのデプロイでは、別のリソースによって管理されているため、テンプレートから削除された場合、リソースは削除されません。 | 糸 |
名前 | リソース名 | string (必須) |
プロパティ | ContainerApp リソース固有のプロパティ | ContainerAppProperties |
タグ | リソース タグ | タグ名と値のディクショナリ。 |
種類 | リソースの種類 | "Microsoft.App/containerApps@2024-10-02-preview" |
QueueScaleRule
名前 | 形容 | 価値 |
---|---|---|
accountName | ストレージ アカウント名。 マネージド ID を使用して認証する場合は必須 | 糸 |
認証 | キュー スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
queueLength | キューの長さ。 | int |
queueName | キュー名。 | 糸 |
RegistryCredentials
名前 | 形容 | 価値 |
---|---|---|
同一性 | Azure Container Registry での認証に使用するマネージド ID。 ユーザー割り当て ID の場合は、完全なユーザー割り当て ID リソース ID を使用します。 システム割り当て ID の場合は、'system' を使用します | 糸 |
passwordSecretRef | レジストリ ログイン パスワードを含むシークレットの名前 | 糸 |
サーバー | Container Registry Server | 糸 |
username | Container Registry Username | 糸 |
ランタイム
名前 | 形容 | 価値 |
---|---|---|
dotnet | .NET アプリの構成 | RuntimeDotnet |
ジャワ | Java アプリの構成 | RuntimeJava |
RuntimeDotnet
名前 | 形容 | 価値 |
---|---|---|
autoConfigureDataProtection | ASP.NET Core Data Protection 機能を自動構成する | bool |
RuntimeJava
名前 | 形容 | 価値 |
---|---|---|
enableMetrics | Java アプリの jmx コア メトリックを有効にする | bool |
javaAgent | Java エージェントによって実現される診断機能 | RuntimeJavaAgent |
RuntimeJavaAgent
名前 | 形容 | 価値 |
---|---|---|
有効 | Java アプリの Java エージェントインジェクションを有効にします。 | bool |
伐採 | Java ログ記録シナリオの機能。 | RuntimeJavaAgentLogging |
RuntimeJavaAgentLogging
名前 | 形容 | 価値 |
---|---|---|
loggerSettings | Java アプリのロガーの設定。 | LoggerSetting[] |
規模
名前 | 形容 | 価値 |
---|---|---|
cooldownPeriod | 随意。 KEDA のクールダウン期間。 既定値は、設定されていない場合は 300 秒です。 | int |
maxReplicas | 随意。 コンテナー レプリカの最大数。 既定値は 10 (設定されていない場合) です。 | int |
minReplicas | 随意。 コンテナー レプリカの最小数。 | int |
pollingInterval | 随意。 KEDA ポーリング間隔。 既定値は、設定されていない場合は 30 秒です。 | int |
準則 | スケーリング ルール。 | ScaleRule[] |
ScaleRule
名前 | 形容 | 価値 |
---|---|---|
azureQueue | Azure Queue ベースのスケーリング。 | QueueScaleRule の |
習慣 | カスタム スケール ルール。 | CustomScaleRule の |
http | HTTP 要求ベースのスケーリング。 | HttpScaleRule を |
名前 | スケール ルール名 | 糸 |
tcp | Tcp 要求ベースのスケーリング。 | TcpScaleRule の |
ScaleRuleAuth
名前 | 形容 | 価値 |
---|---|---|
secretRef | 認証パラメーターのプル元のシークレットの名前。 | 糸 |
triggerParameter | シークレットを使用するトリガー パラメーター | 糸 |
秘密
名前 | 形容 | 価値 |
---|---|---|
同一性 | Azure Key Vault で認証するマネージド ID のリソース ID、またはシステム割り当て ID を使用するシステム。 | 糸 |
keyVaultUrl | コンテナー アプリによって参照されるシークレットを指す Azure Key Vault URL。 | 糸 |
名前 | シークレット名。 | 糸 |
価値 | シークレット値。 | 糸 制約: 機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。 |
SecretVolumeItem
名前 | 形容 | 価値 |
---|---|---|
パス | プロジェクト シークレットのパス。 パスが指定されていない場合、path は既定で secretRef にリストされているシークレットの名前になります。 | 糸 |
secretRef | シークレット値のプル元のコンテナー アプリ シークレットの名前。 | 糸 |
サービス
名前 | 形容 | 価値 |
---|---|---|
種類 | Dev ContainerApp サービスの種類 | string (必須) |
ServiceBind
名前 | 形容 | 価値 |
---|---|---|
clientType | サービスへの接続に使用するクライアントの種類 | 糸 |
customizedKeys | 挿入された値をアプリにカスタマイズするためのカスタマイズされたキー | ServiceBindCustomizedKeys |
名前 | サービス バインドの名前 | 糸 |
serviceId | ターゲット サービスのリソース ID | 糸 |
ServiceBindCustomizedKeys
名前 | 形容 | 価値 |
---|
TcpScaleRule
名前 | 形容 | 価値 |
---|---|---|
認証 | TCP スケール ルールの認証シークレット。 | ScaleRuleAuth[] |
同一性 | コンテナー アプリに割り当てられているユーザー割り当てマネージド ID のリソース ID。システム割り当て ID の場合は "system" です。 | 糸 |
metadata | TCP スケール ルールを記述するメタデータ プロパティ。 | TcpScaleRuleMetadata の |
TcpScaleRuleMetadata
名前 | 形容 | 価値 |
---|
テンプレート
名前 | 形容 | 価値 |
---|---|---|
コンテナー | コンテナー アプリのコンテナー定義の一覧。 | コンテナー[] |
initContainers | アプリ コンテナーの前に実行される特殊なコンテナーの一覧。 | InitContainer[] |
revisionSuffix | リビジョン名に追加されるわかりやすいサフィックス | 糸 |
規模 | コンテナー アプリのプロパティのスケーリング。 | スケール |
serviceBinds | アプリにバインドされているコンテナー アプリ サービスの一覧 | ServiceBind[] |
terminationGracePeriodSeconds | コンテナー アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 30 秒です。 | int |
ボリューム | コンテナー アプリのボリューム定義の一覧。 | ボリューム[] |
TrackedResourceTags
名前 | 形容 | 価値 |
---|
TrafficWeight
名前 | 形容 | 価値 |
---|---|---|
ラベル | トラフィック ラベルをリビジョンに関連付けます | 糸 |
latestRevision | トラフィックの重みが最新の安定したリビジョンに属していることを示します | bool |
revisionName | リビジョンの名前 | 糸 |
重量 | リビジョンに割り当てられたトラフィックの重み | int |
UserAssignedIdentities
名前 | 形容 | 価値 |
---|
UserAssignedIdentity
名前 | 形容 | 価値 |
---|
容積
名前 | 形容 | 価値 |
---|---|---|
mountOptions | Azure ファイル共有または NFS Azure ファイル共有のマウント時に使用されるマウント オプション。 コンマ区切りの文字列である必要があります。 | 糸 |
名前 | ボリューム名。 | 糸 |
秘密 | ボリュームに追加するシークレットの一覧。 シークレットが指定されていない場合、コレクション内のすべてのシークレットがボリュームに追加されます。 | SecretVolumeItem[] |
storageName | ストレージ リソースの名前。 EmptyDir とシークレットを指定する必要はありません。 | 糸 |
storageType | ボリュームのストレージの種類。 指定しない場合は、EmptyDir を使用します。 | 'AzureFile' 'EmptyDir' 'NfsAzureFile' 'Secret' 'Smb' |
VolumeMount
名前 | 形容 | 価値 |
---|---|---|
mountPath | ボリュームをマウントするコンテナー内のパス。':' を含めてはなりません。 | 糸 |
subPath | コンテナーのボリュームをマウントするボリューム内のパス。 既定値は "" (ボリュームのルート) です。 | 糸 |
volumeName | これはボリュームの名前と一致する必要があります。 | 糸 |