- Latest
- 2024-05-01-preview
- 2024-01-01-preview
- 2023-12-01
- 2023-11-01-preview
- 2023-09-01-preview
- 2023-07-01-preview
- 2023-05-01-preview
- 2023-03-01-preview
- 2023-01-01-preview
- 2022-12-01
- 2022-11-01-preview
- 2022-09-01-preview
- 2022-05-01-preview
- 2022-04-01
- 2022-03-01-preview
- 2022-01-01-preview
- 2021-09-01-preview
- 2021-06-01-preview
- 2020-11-01-preview
- 2020-07-01
注釈
注意:Azure Spring Apps Application Deployments (Microsoft.AppPlatform/Spring/apps/deployments)は現在非推奨となり、2028年5月31日に廃止される予定です。 詳細については、https://aka.ms/asaretirement を参照してください。
Bicepリソースの定義
Spring/apps/deployments リソースの種類は、次をターゲットとする操作でデプロイできます。
Resource groups -リソースグループのデプロイコマンド
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソース形式
Microsoftを作るために。AppPlatform/Spring/apps/deploymentsリソースで、テンプレートに以下のBicepを追加してください。
resource symbolicname 'Microsoft.AppPlatform/Spring/apps/deployments@2022-09-01-preview' = {
parent: resourceSymbolicName
name: 'string'
properties: {
active: bool
deploymentSettings: {
addonConfigs: {
{customized property}: {
{customized property}: any(...)
}
}
containerProbeSettings: {
disableProbe: bool
}
environmentVariables: {
{customized property}: 'string'
}
livenessProbe: {
disableProbe: bool
failureThreshold: int
initialDelaySeconds: int
periodSeconds: int
probeAction: {
type: 'string'
// For remaining properties, see ProbeAction objects
}
successThreshold: int
timeoutSeconds: int
}
readinessProbe: {
disableProbe: bool
failureThreshold: int
initialDelaySeconds: int
periodSeconds: int
probeAction: {
type: 'string'
// For remaining properties, see ProbeAction objects
}
successThreshold: int
timeoutSeconds: int
}
resourceRequests: {
cpu: 'string'
memory: 'string'
}
startupProbe: {
disableProbe: bool
failureThreshold: int
initialDelaySeconds: int
periodSeconds: int
probeAction: {
type: 'string'
// For remaining properties, see ProbeAction objects
}
successThreshold: int
timeoutSeconds: int
}
terminationGracePeriodSeconds: int
}
source: {
version: 'string'
type: 'string'
// For remaining properties, see UserSourceInfo objects
}
}
sku: {
capacity: int
name: 'string'
tier: 'string'
}
}
ProbeAction オブジェクト
型 プロパティを設定して、オブジェクトの型を指定します。
ExecAction の場合は、次を使用します。
{
command: [
'string'
]
type: 'ExecAction'
}
HTTPGetAction の場合は、次を使用します。
{
path: 'string'
scheme: 'string'
type: 'HTTPGetAction'
}
TCPSocketAction の場合は、次を使用します。
{
type: 'TCPSocketAction'
}
UserSourceInfo オブジェクト
型 プロパティを設定して、オブジェクトの型を指定します。
BuildResult には、次を使用します。
{
buildResultId: 'string'
type: 'BuildResult'
}
コンテナには、次を使用します。
{
customContainer: {
args: [
'string'
]
command: [
'string'
]
containerImage: 'string'
imageRegistryCredential: {
password: 'string'
username: 'string'
}
languageFramework: 'string'
server: 'string'
}
type: 'Container'
}
Jar の場合は、次を使用します。
{
jvmOptions: 'string'
relativePath: 'string'
runtimeVersion: 'string'
type: 'Jar'
}
NetCoreZip の場合は、以下を使用します。
{
netCoreMainEntryPath: 'string'
relativePath: 'string'
runtimeVersion: 'string'
type: 'NetCoreZip'
}
[ ソース] には、次を使用します。
{
artifactSelector: 'string'
relativePath: 'string'
runtimeVersion: 'string'
type: 'Source'
}
プロパティ値
Microsoft。AppPlatform/Spring/apps/デプロイメント
| Name | Description | Value |
|---|---|---|
| name | リソース名 | 文字列 (必須) |
| 親 | Bicepでは、子リソースの親リソースを指定することができます。 このプロパティを追加する必要があるのは、子リソースが親リソースの外部で宣言されている場合のみです。 詳細については、Child resource outside parent resourceをご覧ください。 |
型のリソースのシンボリック名: Spring/apps |
| properties | デプロイ リソースのプロパティ | DeploymentResourceProperties |
| sku | デプロイ リソースの SKU | Sku |
AddonProfile
| Name | Description | Value |
|---|
BuildResultUserSourceInfo
| Name | Description | Value |
|---|---|---|
| buildResultId | 同じ Spring インスタンスの既存の成功したビルド結果のリソース ID。 | 文字列 |
| 型 | アップロードされたソースの種類 | 'BuildResult' (必須) |
ContainerProbeSettings
| Name | Description | Value |
|---|---|---|
| disableProbe | liveness プローブと準備プローブを無効にするかどうかを示します | bool |
CustomContainer
| Name | Description | Value |
|---|---|---|
| args | エントリポイントの引数。 これが指定されていない場合は、Docker イメージの CMD が使用されます。 | string[] |
| command | Entrypoint 配列。 シェル内では実行されません。 これが指定されていない場合は、Docker イメージの ENTRYPOINT が使用されます。 | string[] |
| containerImage | カスタム コンテナーのコンテナー イメージ。 これは、<リポジトリの>の形式である必要があります。レジストリのサーバー名のないタグ<> | 文字列 |
| imageRegistryCredential | イメージ レジストリの資格情報 | ImageRegistryCredential |
| languageFramework | アップロードされたコンテナー イメージの言語フレームワーク | 文字列 |
| サーバー | コンテナー イメージを含むレジストリの名前 | 文字列 |
CustomContainerUserSourceInfo
| Name | Description | Value |
|---|---|---|
| customContainer | カスタム コンテナー ペイロード | CustomContainer |
| 型 | アップロードされたソースの種類 | 'コンテナ' (必須) |
DeploymentResourceProperties
| Name | Description | Value |
|---|---|---|
| active | 展開がアクティブかどうかを示します | bool |
| deploymentSettings | 展開の展開設定 | DeploymentSettings |
| ソース | デプロイのアップロードされたソース情報。 | UserSourceInfo |
DeploymentSettings
| Name | Description | Value |
|---|---|---|
| addonConfigs | アドオンのコレクション | DeploymentSettingsAddonConfigs |
| containerProbeSettings | コンテナーのライブネスと準備プローブの設定 | ContainerProbeSettings |
| environmentVariables | 環境変数のコレクション | DeploymentSettingsEnvironmentVariables |
| livenessProbe | アプリ インスタンスのライブネスの定期的なプローブ。 プローブが失敗すると、アプリ インスタンスが再起動されます。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| readinessProbe | App Instance サービスの準備状況の定期的なプローブ。 プローブが失敗した場合、App Instance はサービス エンドポイントから削除されます。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| resourceRequests | 必要な CPU とメモリに対して要求されたリソース量。 必要な CPU とメモリを表すためにこのフィールドを使用することをお勧めします。古いフィールドの cpu と memoryInGB は後で非推奨になります。 | ResourceRequests |
| startupProbe | StartupProbe は、アプリ インスタンスが正常に初期化されたことを示します。 指定した場合、これが正常に完了するまで、他のプローブは実行されません。 このプローブが失敗した場合、livenessProbe が失敗した場合と同様に、ポッドが再起動されます。 これは、データの読み込みまたはキャッシュのウォーム化に長い時間がかかる場合に、アプリ インスタンスのライフサイクルの開始時に、安定状態の操作中とは異なるプローブ パラメーターを提供するために使用できます。 これは更新できません。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| terminationGracePeriodSeconds | アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 削除要求で減らされる可能性があります。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 猶予期間は、アプリ インスタンスで実行されているプロセスが終了シグナルを送信してから、プロセスが強制終了シグナルで強制的に停止されるまでの時間 (秒単位) です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 90 秒です。 | int |
DeploymentSettingsAddonConfigs
| Name | Description | Value |
|---|
DeploymentSettingsEnvironmentVariables
| Name | Description | Value |
|---|
ExecAction
| Name | Description | Value |
|---|---|---|
| command | コマンドはコンテナー内で実行するコマンド ラインであり、コマンドの作業ディレクトリはコンテナーのファイルシステムのルート ('/') です。 このコマンドはシェル内で実行されないため、従来のシェル命令 ('|'など) は機能しません。 シェルを使用するには、そのシェルを明示的に呼び出す必要があります。 終了ステータス 0 はライブ/正常として扱われ、0 以外は異常として扱われます。 | string[] |
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'ExecAction' (必須) |
HttpGetAction
| Name | Description | Value |
|---|---|---|
| パス | HTTPサーバー上のaccess経路。 | 文字列 |
| scheme | ホストへの接続に使用するスキーム。 既定値は HTTP です。 指定できる列挙値: - "HTTP" は、使用されるスキームが http:// されることを意味します- "HTTPS" は、使用されるスキームが https:// されることを意味します |
'HTTP' 'HTTPS' |
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'HTTPGetAction' (必須) |
ImageRegistryCredential
| Name | Description | Value |
|---|---|---|
| パスワード | イメージ レジストリ資格情報のパスワード | 文字列 |
| ユーザー名 | イメージ レジストリ資格情報のユーザー名 | 文字列 |
JarUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| jvmOptions | JVM パラメーター | 文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | Jar ファイルのランタイム バージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'Jar' (必須) |
NetCoreZipUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| netCoreMainEntryPath | zipルートに対する.NET実行ファイルへのパス | 文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | .Netファイルのランタイムバージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'NetCoreZip' (必須) |
Probe
| Name | Description | Value |
|---|---|---|
| disableProbe | プローブが無効かどうかを示します。 | bool (必須) |
| failureThreshold | 成功した後に失敗したと見なされるプローブの連続する最小障害。 最小値は 1 です。 | int |
| initialDelaySeconds | プローブが開始されるまでのアプリ インスタンスの開始後の秒数。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | int |
| periodSeconds | プローブを実行する頻度 (秒単位)。 最小値は 1 です。 | int |
| probeAction | プローブのアクション。 | ProbeAction |
| successThreshold | 失敗した後にプローブが成功したと見なされる最小連続成功数。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 | int |
| timeoutSeconds | プローブがタイムアウトする秒数。最小値は 1 です。 | int |
ProbeAction
| Name | Description | Value |
|---|---|---|
| 型 | ExecAction 型の場合は 'ExecAction' に設定します。 HttpGetAction 型の 'HTTPGetAction' に設定します。 型 TCPSocketAction を 'TCPSocketAction' に設定します。 | 'ExecAction' 'HTTPGetAction' 'TCPSocketAction' (必須) |
ResourceRequests
| Name | Description | Value |
|---|---|---|
| cpu | 必要な CPU。 1 コアは 1 または 1000m で表すことができます。 Basic レベルの場合は 500m または 1、Standard レベルの場合は {500m、1、2、3、4} です。 | 文字列 |
| メモリ | 必要なメモリ。 1 GB は 1Gi または 1024Mi で表すことができます。 Basic レベルの場合は {512Mi、1Gi、2Gi}、Standard レベルの場合は {512Mi、1Gi、2Gi、...、8Gi} です。 | 文字列 |
Sku
| Name | Description | Value |
|---|---|---|
| キャパシティ | ターゲット リソースの現在の容量 | int |
| name | SKU の名前 | 文字列 |
| レベル | SKU の階層 | 文字列 |
SourceUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| artifactSelector | マルチモジュール プロジェクトのデプロイに使用する成果物のセレクター。 これは次のようになります。 ターゲットモジュールやprojectへの相対的な経路です。 |
文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | ソース ファイルのランタイム バージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'Source' (必須) |
TCPSocketAction
| Name | Description | Value |
|---|---|---|
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'TCPSocketAction' (必須) |
UserSourceInfo
| Name | Description | Value |
|---|---|---|
| 型 | 型 BuildResultUserSourceInfo の 'BuildResult' に設定します。 タイプ CustomContainerUserSourceInfo を 'Container' に設定します。 タイプ JarUploadedUserSourceInfo を 'Jar' に設定します。 タイプ NetCoreZipUploadedUserSourceInfo を 'NetCoreZip' に設定します。 SourceUploadedUserSourceInfo 型を 'Source' に設定します。 | 'BuildResult' 'Container' 'Jar' 'NetCoreZip' 'Source' (必須) |
| バージョン | ソースのバージョン | 文字列 |
使用例
Bicep サンプル
Spring Cloud Deployment のデプロイの基本的な例。
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource spring 'Microsoft.AppPlatform/Spring@2023-05-01-preview' = {
name: resourceName
location: location
properties: {
zoneRedundant: false
}
sku: {
name: 'E0'
}
}
resource app 'Microsoft.AppPlatform/Spring/apps@2023-05-01-preview' = {
parent: spring
name: resourceName
location: location
properties: {
customPersistentDisks: []
enableEndToEndTLS: false
public: false
}
}
resource deployment 'Microsoft.AppPlatform/Spring/apps/deployments@2023-05-01-preview' = {
parent: app
name: resourceName
properties: {
deploymentSettings: {
environmentVariables: {}
}
source: {
customContainer: {
args: []
command: []
containerImage: 'springio/gs-spring-boot-docker'
languageFramework: ''
server: 'docker.io'
}
type: 'Container'
}
}
sku: {
capacity: 1
name: 'E0'
tier: 'Enterprise'
}
}
Azure クイック スタートのサンプル
以下の Azure クイックスタートテンプレートには、このリソースタイプのデプロイのためのBicepサンプルが含まれています。
| Bicepファイル | Description |
|---|---|
| シンプルなAzure Spring Appsマイクロサービスアプリケーションを展開 | このテンプレートは、Azure上で実行するためのシンプルなAzure Spring Appsマイクロサービスアプリケーションをデプロイします。 |
ARM テンプレート リソース定義
Spring/apps/deployments リソースの種類は、次をターゲットとする操作でデプロイできます。
Resource groups -リソースグループのデプロイコマンド
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソース形式
Microsoftを作るために。AppPlatform/Spring/apps/deployments リソースで、テンプレートに以下のJSONを追加してください。
{
"type": "Microsoft.AppPlatform/Spring/apps/deployments",
"apiVersion": "2022-09-01-preview",
"name": "string",
"properties": {
"active": "bool",
"deploymentSettings": {
"addonConfigs": {
"{customized property}": {
"{customized property}": {}
}
},
"containerProbeSettings": {
"disableProbe": "bool"
},
"environmentVariables": {
"{customized property}": "string"
},
"livenessProbe": {
"disableProbe": "bool",
"failureThreshold": "int",
"initialDelaySeconds": "int",
"periodSeconds": "int",
"probeAction": {
"type": "string"
// For remaining properties, see ProbeAction objects
},
"successThreshold": "int",
"timeoutSeconds": "int"
},
"readinessProbe": {
"disableProbe": "bool",
"failureThreshold": "int",
"initialDelaySeconds": "int",
"periodSeconds": "int",
"probeAction": {
"type": "string"
// For remaining properties, see ProbeAction objects
},
"successThreshold": "int",
"timeoutSeconds": "int"
},
"resourceRequests": {
"cpu": "string",
"memory": "string"
},
"startupProbe": {
"disableProbe": "bool",
"failureThreshold": "int",
"initialDelaySeconds": "int",
"periodSeconds": "int",
"probeAction": {
"type": "string"
// For remaining properties, see ProbeAction objects
},
"successThreshold": "int",
"timeoutSeconds": "int"
},
"terminationGracePeriodSeconds": "int"
},
"source": {
"version": "string",
"type": "string"
// For remaining properties, see UserSourceInfo objects
}
},
"sku": {
"capacity": "int",
"name": "string",
"tier": "string"
}
}
ProbeAction オブジェクト
型 プロパティを設定して、オブジェクトの型を指定します。
ExecAction の場合は、次を使用します。
{
"command": [ "string" ],
"type": "ExecAction"
}
HTTPGetAction の場合は、次を使用します。
{
"path": "string",
"scheme": "string",
"type": "HTTPGetAction"
}
TCPSocketAction の場合は、次を使用します。
{
"type": "TCPSocketAction"
}
UserSourceInfo オブジェクト
型 プロパティを設定して、オブジェクトの型を指定します。
BuildResult には、次を使用します。
{
"buildResultId": "string",
"type": "BuildResult"
}
コンテナには、次を使用します。
{
"customContainer": {
"args": [ "string" ],
"command": [ "string" ],
"containerImage": "string",
"imageRegistryCredential": {
"password": "string",
"username": "string"
},
"languageFramework": "string",
"server": "string"
},
"type": "Container"
}
Jar の場合は、次を使用します。
{
"jvmOptions": "string",
"relativePath": "string",
"runtimeVersion": "string",
"type": "Jar"
}
NetCoreZip の場合は、以下を使用します。
{
"netCoreMainEntryPath": "string",
"relativePath": "string",
"runtimeVersion": "string",
"type": "NetCoreZip"
}
[ ソース] には、次を使用します。
{
"artifactSelector": "string",
"relativePath": "string",
"runtimeVersion": "string",
"type": "Source"
}
プロパティ値
Microsoft。AppPlatform/Spring/apps/デプロイメント
| Name | Description | Value |
|---|---|---|
| apiVersion | API のバージョン | '2022-09-01-preview' |
| name | リソース名 | 文字列 (必須) |
| properties | デプロイ リソースのプロパティ | DeploymentResourceProperties |
| sku | デプロイ リソースの SKU | Sku |
| 型 | リソースの種類 | 「Microsoft。AppPlatform/Spring/apps/デプロイメント |
AddonProfile
| Name | Description | Value |
|---|
BuildResultUserSourceInfo
| Name | Description | Value |
|---|---|---|
| buildResultId | 同じ Spring インスタンスの既存の成功したビルド結果のリソース ID。 | 文字列 |
| 型 | アップロードされたソースの種類 | 'BuildResult' (必須) |
ContainerProbeSettings
| Name | Description | Value |
|---|---|---|
| disableProbe | liveness プローブと準備プローブを無効にするかどうかを示します | bool |
CustomContainer
| Name | Description | Value |
|---|---|---|
| args | エントリポイントの引数。 これが指定されていない場合は、Docker イメージの CMD が使用されます。 | string[] |
| command | Entrypoint 配列。 シェル内では実行されません。 これが指定されていない場合は、Docker イメージの ENTRYPOINT が使用されます。 | string[] |
| containerImage | カスタム コンテナーのコンテナー イメージ。 これは、<リポジトリの>の形式である必要があります。レジストリのサーバー名のないタグ<> | 文字列 |
| imageRegistryCredential | イメージ レジストリの資格情報 | ImageRegistryCredential |
| languageFramework | アップロードされたコンテナー イメージの言語フレームワーク | 文字列 |
| サーバー | コンテナー イメージを含むレジストリの名前 | 文字列 |
CustomContainerUserSourceInfo
| Name | Description | Value |
|---|---|---|
| customContainer | カスタム コンテナー ペイロード | CustomContainer |
| 型 | アップロードされたソースの種類 | 'コンテナ' (必須) |
DeploymentResourceProperties
| Name | Description | Value |
|---|---|---|
| active | 展開がアクティブかどうかを示します | bool |
| deploymentSettings | 展開の展開設定 | DeploymentSettings |
| ソース | デプロイのアップロードされたソース情報。 | UserSourceInfo |
DeploymentSettings
| Name | Description | Value |
|---|---|---|
| addonConfigs | アドオンのコレクション | DeploymentSettingsAddonConfigs |
| containerProbeSettings | コンテナーのライブネスと準備プローブの設定 | ContainerProbeSettings |
| environmentVariables | 環境変数のコレクション | DeploymentSettingsEnvironmentVariables |
| livenessProbe | アプリ インスタンスのライブネスの定期的なプローブ。 プローブが失敗すると、アプリ インスタンスが再起動されます。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| readinessProbe | App Instance サービスの準備状況の定期的なプローブ。 プローブが失敗した場合、App Instance はサービス エンドポイントから削除されます。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| resourceRequests | 必要な CPU とメモリに対して要求されたリソース量。 必要な CPU とメモリを表すためにこのフィールドを使用することをお勧めします。古いフィールドの cpu と memoryInGB は後で非推奨になります。 | ResourceRequests |
| startupProbe | StartupProbe は、アプリ インスタンスが正常に初期化されたことを示します。 指定した場合、これが正常に完了するまで、他のプローブは実行されません。 このプローブが失敗した場合、livenessProbe が失敗した場合と同様に、ポッドが再起動されます。 これは、データの読み込みまたはキャッシュのウォーム化に長い時間がかかる場合に、アプリ インスタンスのライフサイクルの開始時に、安定状態の操作中とは異なるプローブ パラメーターを提供するために使用できます。 これは更新できません。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| terminationGracePeriodSeconds | アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 削除要求で減らされる可能性があります。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 猶予期間は、アプリ インスタンスで実行されているプロセスが終了シグナルを送信してから、プロセスが強制終了シグナルで強制的に停止されるまでの時間 (秒単位) です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 90 秒です。 | int |
DeploymentSettingsAddonConfigs
| Name | Description | Value |
|---|
DeploymentSettingsEnvironmentVariables
| Name | Description | Value |
|---|
ExecAction
| Name | Description | Value |
|---|---|---|
| command | コマンドはコンテナー内で実行するコマンド ラインであり、コマンドの作業ディレクトリはコンテナーのファイルシステムのルート ('/') です。 このコマンドはシェル内で実行されないため、従来のシェル命令 ('|'など) は機能しません。 シェルを使用するには、そのシェルを明示的に呼び出す必要があります。 終了ステータス 0 はライブ/正常として扱われ、0 以外は異常として扱われます。 | string[] |
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'ExecAction' (必須) |
HttpGetAction
| Name | Description | Value |
|---|---|---|
| パス | HTTPサーバー上のaccess経路。 | 文字列 |
| scheme | ホストへの接続に使用するスキーム。 既定値は HTTP です。 指定できる列挙値: - "HTTP" は、使用されるスキームが http:// されることを意味します- "HTTPS" は、使用されるスキームが https:// されることを意味します |
'HTTP' 'HTTPS' |
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'HTTPGetAction' (必須) |
ImageRegistryCredential
| Name | Description | Value |
|---|---|---|
| パスワード | イメージ レジストリ資格情報のパスワード | 文字列 |
| ユーザー名 | イメージ レジストリ資格情報のユーザー名 | 文字列 |
JarUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| jvmOptions | JVM パラメーター | 文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | Jar ファイルのランタイム バージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'Jar' (必須) |
NetCoreZipUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| netCoreMainEntryPath | zipルートに対する.NET実行ファイルへのパス | 文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | .Netファイルのランタイムバージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'NetCoreZip' (必須) |
Probe
| Name | Description | Value |
|---|---|---|
| disableProbe | プローブが無効かどうかを示します。 | bool (必須) |
| failureThreshold | 成功した後に失敗したと見なされるプローブの連続する最小障害。 最小値は 1 です。 | int |
| initialDelaySeconds | プローブが開始されるまでのアプリ インスタンスの開始後の秒数。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | int |
| periodSeconds | プローブを実行する頻度 (秒単位)。 最小値は 1 です。 | int |
| probeAction | プローブのアクション。 | ProbeAction |
| successThreshold | 失敗した後にプローブが成功したと見なされる最小連続成功数。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 | int |
| timeoutSeconds | プローブがタイムアウトする秒数。最小値は 1 です。 | int |
ProbeAction
| Name | Description | Value |
|---|---|---|
| 型 | ExecAction 型の場合は 'ExecAction' に設定します。 HttpGetAction 型の 'HTTPGetAction' に設定します。 型 TCPSocketAction を 'TCPSocketAction' に設定します。 | 'ExecAction' 'HTTPGetAction' 'TCPSocketAction' (必須) |
ResourceRequests
| Name | Description | Value |
|---|---|---|
| cpu | 必要な CPU。 1 コアは 1 または 1000m で表すことができます。 Basic レベルの場合は 500m または 1、Standard レベルの場合は {500m、1、2、3、4} です。 | 文字列 |
| メモリ | 必要なメモリ。 1 GB は 1Gi または 1024Mi で表すことができます。 Basic レベルの場合は {512Mi、1Gi、2Gi}、Standard レベルの場合は {512Mi、1Gi、2Gi、...、8Gi} です。 | 文字列 |
Sku
| Name | Description | Value |
|---|---|---|
| キャパシティ | ターゲット リソースの現在の容量 | int |
| name | SKU の名前 | 文字列 |
| レベル | SKU の階層 | 文字列 |
SourceUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| artifactSelector | マルチモジュール プロジェクトのデプロイに使用する成果物のセレクター。 これは次のようになります。 ターゲットモジュールやprojectへの相対的な経路です。 |
文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | ソース ファイルのランタイム バージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'Source' (必須) |
TCPSocketAction
| Name | Description | Value |
|---|---|---|
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'TCPSocketAction' (必須) |
UserSourceInfo
| Name | Description | Value |
|---|---|---|
| 型 | 型 BuildResultUserSourceInfo の 'BuildResult' に設定します。 タイプ CustomContainerUserSourceInfo を 'Container' に設定します。 タイプ JarUploadedUserSourceInfo を 'Jar' に設定します。 タイプ NetCoreZipUploadedUserSourceInfo を 'NetCoreZip' に設定します。 SourceUploadedUserSourceInfo 型を 'Source' に設定します。 | 'BuildResult' 'Container' 'Jar' 'NetCoreZip' 'Source' (必須) |
| バージョン | ソースのバージョン | 文字列 |
使用例
Azure クイックスタート テンプレート
以下のAzureクイックスタートテンプレートはこのリソースタイプを展開します。
| Template | Description |
|---|---|
|
シンプルなAzure Spring Appsマイクロサービスアプリケーションを展開 |
このテンプレートは、Azure上で実行するためのシンプルなAzure Spring Appsマイクロサービスアプリケーションをデプロイします。 |
Terraform (AzAPI プロバイダー) リソース定義
Spring/apps/deployments リソースの種類は、次をターゲットとする操作でデプロイできます。
- リソース グループ
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソース形式
Microsoftを作るために。AppPlatform/Spring/apps/deploymentsリソースで、テンプレートに以下のTerraformを追加してください。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.AppPlatform/Spring/apps/deployments@2022-09-01-preview"
name = "string"
parent_id = "string"
body = {
properties = {
active = bool
deploymentSettings = {
addonConfigs = {
{customized property} = {
{customized property} = ?
}
}
containerProbeSettings = {
disableProbe = bool
}
environmentVariables = {
{customized property} = "string"
}
livenessProbe = {
disableProbe = bool
failureThreshold = int
initialDelaySeconds = int
periodSeconds = int
probeAction = {
type = "string"
// For remaining properties, see ProbeAction objects
}
successThreshold = int
timeoutSeconds = int
}
readinessProbe = {
disableProbe = bool
failureThreshold = int
initialDelaySeconds = int
periodSeconds = int
probeAction = {
type = "string"
// For remaining properties, see ProbeAction objects
}
successThreshold = int
timeoutSeconds = int
}
resourceRequests = {
cpu = "string"
memory = "string"
}
startupProbe = {
disableProbe = bool
failureThreshold = int
initialDelaySeconds = int
periodSeconds = int
probeAction = {
type = "string"
// For remaining properties, see ProbeAction objects
}
successThreshold = int
timeoutSeconds = int
}
terminationGracePeriodSeconds = int
}
source = {
version = "string"
type = "string"
// For remaining properties, see UserSourceInfo objects
}
}
sku = {
capacity = int
name = "string"
tier = "string"
}
}
}
ProbeAction オブジェクト
型 プロパティを設定して、オブジェクトの型を指定します。
ExecAction の場合は、次を使用します。
{
command = [
"string"
]
type = "ExecAction"
}
HTTPGetAction の場合は、次を使用します。
{
path = "string"
scheme = "string"
type = "HTTPGetAction"
}
TCPSocketAction の場合は、次を使用します。
{
type = "TCPSocketAction"
}
UserSourceInfo オブジェクト
型 プロパティを設定して、オブジェクトの型を指定します。
BuildResult には、次を使用します。
{
buildResultId = "string"
type = "BuildResult"
}
コンテナには、次を使用します。
{
customContainer = {
args = [
"string"
]
command = [
"string"
]
containerImage = "string"
imageRegistryCredential = {
password = "string"
username = "string"
}
languageFramework = "string"
server = "string"
}
type = "Container"
}
Jar の場合は、次を使用します。
{
jvmOptions = "string"
relativePath = "string"
runtimeVersion = "string"
type = "Jar"
}
NetCoreZip の場合は、以下を使用します。
{
netCoreMainEntryPath = "string"
relativePath = "string"
runtimeVersion = "string"
type = "NetCoreZip"
}
[ ソース] には、次を使用します。
{
artifactSelector = "string"
relativePath = "string"
runtimeVersion = "string"
type = "Source"
}
プロパティ値
Microsoft。AppPlatform/Spring/apps/デプロイメント
| Name | Description | Value |
|---|---|---|
| name | リソース名 | 文字列 (必須) |
| parent_id | このリソースの親であるリソースの ID。 | タイプのリソースのID: Spring/apps |
| properties | デプロイ リソースのプロパティ | DeploymentResourceProperties |
| sku | デプロイ リソースの SKU | Sku |
| 型 | リソースの種類 | 「Microsoft。AppPlatform/Spring/apps/deployments@2022-09-01-preview" |
AddonProfile
| Name | Description | Value |
|---|
BuildResultUserSourceInfo
| Name | Description | Value |
|---|---|---|
| buildResultId | 同じ Spring インスタンスの既存の成功したビルド結果のリソース ID。 | 文字列 |
| 型 | アップロードされたソースの種類 | 'BuildResult' (必須) |
ContainerProbeSettings
| Name | Description | Value |
|---|---|---|
| disableProbe | liveness プローブと準備プローブを無効にするかどうかを示します | bool |
CustomContainer
| Name | Description | Value |
|---|---|---|
| args | エントリポイントの引数。 これが指定されていない場合は、Docker イメージの CMD が使用されます。 | string[] |
| command | Entrypoint 配列。 シェル内では実行されません。 これが指定されていない場合は、Docker イメージの ENTRYPOINT が使用されます。 | string[] |
| containerImage | カスタム コンテナーのコンテナー イメージ。 これは、<リポジトリの>の形式である必要があります。レジストリのサーバー名のないタグ<> | 文字列 |
| imageRegistryCredential | イメージ レジストリの資格情報 | ImageRegistryCredential |
| languageFramework | アップロードされたコンテナー イメージの言語フレームワーク | 文字列 |
| サーバー | コンテナー イメージを含むレジストリの名前 | 文字列 |
CustomContainerUserSourceInfo
| Name | Description | Value |
|---|---|---|
| customContainer | カスタム コンテナー ペイロード | CustomContainer |
| 型 | アップロードされたソースの種類 | 'コンテナ' (必須) |
DeploymentResourceProperties
| Name | Description | Value |
|---|---|---|
| active | 展開がアクティブかどうかを示します | bool |
| deploymentSettings | 展開の展開設定 | DeploymentSettings |
| ソース | デプロイのアップロードされたソース情報。 | UserSourceInfo |
DeploymentSettings
| Name | Description | Value |
|---|---|---|
| addonConfigs | アドオンのコレクション | DeploymentSettingsAddonConfigs |
| containerProbeSettings | コンテナーのライブネスと準備プローブの設定 | ContainerProbeSettings |
| environmentVariables | 環境変数のコレクション | DeploymentSettingsEnvironmentVariables |
| livenessProbe | アプリ インスタンスのライブネスの定期的なプローブ。 プローブが失敗すると、アプリ インスタンスが再起動されます。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| readinessProbe | App Instance サービスの準備状況の定期的なプローブ。 プローブが失敗した場合、App Instance はサービス エンドポイントから削除されます。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| resourceRequests | 必要な CPU とメモリに対して要求されたリソース量。 必要な CPU とメモリを表すためにこのフィールドを使用することをお勧めします。古いフィールドの cpu と memoryInGB は後で非推奨になります。 | ResourceRequests |
| startupProbe | StartupProbe は、アプリ インスタンスが正常に初期化されたことを示します。 指定した場合、これが正常に完了するまで、他のプローブは実行されません。 このプローブが失敗した場合、livenessProbe が失敗した場合と同様に、ポッドが再起動されます。 これは、データの読み込みまたはキャッシュのウォーム化に長い時間がかかる場合に、アプリ インスタンスのライフサイクルの開始時に、安定状態の操作中とは異なるプローブ パラメーターを提供するために使用できます。 これは更新できません。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | Probe |
| terminationGracePeriodSeconds | アプリ インスタンスが正常に終了する必要がある時間 (秒単位)。 削除要求で減らされる可能性があります。 値は負以外の整数である必要があります。 値 0 は、強制終了信号を介して直ちに停止することを示します (シャットダウンする機会はありません)。 この値が nil の場合は、代わりに既定の猶予期間が使用されます。 猶予期間は、アプリ インスタンスで実行されているプロセスが終了シグナルを送信してから、プロセスが強制終了シグナルで強制的に停止されるまでの時間 (秒単位) です。 この値は、プロセスの予想されるクリーンアップ時間よりも長く設定します。 既定値は 90 秒です。 | int |
DeploymentSettingsAddonConfigs
| Name | Description | Value |
|---|
DeploymentSettingsEnvironmentVariables
| Name | Description | Value |
|---|
ExecAction
| Name | Description | Value |
|---|---|---|
| command | コマンドはコンテナー内で実行するコマンド ラインであり、コマンドの作業ディレクトリはコンテナーのファイルシステムのルート ('/') です。 このコマンドはシェル内で実行されないため、従来のシェル命令 ('|'など) は機能しません。 シェルを使用するには、そのシェルを明示的に呼び出す必要があります。 終了ステータス 0 はライブ/正常として扱われ、0 以外は異常として扱われます。 | string[] |
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'ExecAction' (必須) |
HttpGetAction
| Name | Description | Value |
|---|---|---|
| パス | HTTPサーバー上のaccess経路。 | 文字列 |
| scheme | ホストへの接続に使用するスキーム。 既定値は HTTP です。 指定できる列挙値: - "HTTP" は、使用されるスキームが http:// されることを意味します- "HTTPS" は、使用されるスキームが https:// されることを意味します |
'HTTP' 'HTTPS' |
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'HTTPGetAction' (必須) |
ImageRegistryCredential
| Name | Description | Value |
|---|---|---|
| パスワード | イメージ レジストリ資格情報のパスワード | 文字列 |
| ユーザー名 | イメージ レジストリ資格情報のユーザー名 | 文字列 |
JarUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| jvmOptions | JVM パラメーター | 文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | Jar ファイルのランタイム バージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'Jar' (必須) |
NetCoreZipUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| netCoreMainEntryPath | zipルートに対する.NET実行ファイルへのパス | 文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | .Netファイルのランタイムバージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'NetCoreZip' (必須) |
Probe
| Name | Description | Value |
|---|---|---|
| disableProbe | プローブが無効かどうかを示します。 | bool (必須) |
| failureThreshold | 成功した後に失敗したと見なされるプローブの連続する最小障害。 最小値は 1 です。 | int |
| initialDelaySeconds | プローブが開始されるまでのアプリ インスタンスの開始後の秒数。 詳細情報: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | int |
| periodSeconds | プローブを実行する頻度 (秒単位)。 最小値は 1 です。 | int |
| probeAction | プローブのアクション。 | ProbeAction |
| successThreshold | 失敗した後にプローブが成功したと見なされる最小連続成功数。 ライブ性と起動には 1 にする必要があります。 最小値は 1 です。 | int |
| timeoutSeconds | プローブがタイムアウトする秒数。最小値は 1 です。 | int |
ProbeAction
| Name | Description | Value |
|---|---|---|
| 型 | ExecAction 型の場合は 'ExecAction' に設定します。 HttpGetAction 型の 'HTTPGetAction' に設定します。 型 TCPSocketAction を 'TCPSocketAction' に設定します。 | 'ExecAction' 'HTTPGetAction' 'TCPSocketAction' (必須) |
ResourceRequests
| Name | Description | Value |
|---|---|---|
| cpu | 必要な CPU。 1 コアは 1 または 1000m で表すことができます。 Basic レベルの場合は 500m または 1、Standard レベルの場合は {500m、1、2、3、4} です。 | 文字列 |
| メモリ | 必要なメモリ。 1 GB は 1Gi または 1024Mi で表すことができます。 Basic レベルの場合は {512Mi、1Gi、2Gi}、Standard レベルの場合は {512Mi、1Gi、2Gi、...、8Gi} です。 | 文字列 |
Sku
| Name | Description | Value |
|---|---|---|
| キャパシティ | ターゲット リソースの現在の容量 | int |
| name | SKU の名前 | 文字列 |
| レベル | SKU の階層 | 文字列 |
SourceUploadedUserSourceInfo
| Name | Description | Value |
|---|---|---|
| artifactSelector | マルチモジュール プロジェクトのデプロイに使用する成果物のセレクター。 これは次のようになります。 ターゲットモジュールやprojectへの相対的な経路です。 |
文字列 |
| relativePath | ソースを格納するstorageの相対経路 | 文字列 |
| runtimeVersion | ソース ファイルのランタイム バージョン | 文字列 |
| 型 | アップロードされたソースの種類 | 'Source' (必須) |
TCPSocketAction
| Name | Description | Value |
|---|---|---|
| 型 | 正常性チェックを実行するために実行するアクションの種類。 | 'TCPSocketAction' (必須) |
UserSourceInfo
| Name | Description | Value |
|---|---|---|
| 型 | 型 BuildResultUserSourceInfo の 'BuildResult' に設定します。 タイプ CustomContainerUserSourceInfo を 'Container' に設定します。 タイプ JarUploadedUserSourceInfo を 'Jar' に設定します。 タイプ NetCoreZipUploadedUserSourceInfo を 'NetCoreZip' に設定します。 SourceUploadedUserSourceInfo 型を 'Source' に設定します。 | 'BuildResult' 'Container' 'Jar' 'NetCoreZip' 'Source' (必須) |
| バージョン | ソースのバージョン | 文字列 |
使用例
Terraformサンプル
Spring Cloud Deployment のデプロイの基本的な例。
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "Spring" {
type = "Microsoft.AppPlatform/Spring@2023-05-01-preview"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
zoneRedundant = false
}
sku = {
name = "E0"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "app" {
type = "Microsoft.AppPlatform/Spring/apps@2023-05-01-preview"
parent_id = azapi_resource.Spring.id
name = var.resource_name
location = var.location
body = {
properties = {
customPersistentDisks = [
]
enableEndToEndTLS = false
public = false
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "deployment" {
type = "Microsoft.AppPlatform/Spring/apps/deployments@2023-05-01-preview"
parent_id = azapi_resource.app.id
name = var.resource_name
body = {
properties = {
deploymentSettings = {
environmentVariables = {
}
}
source = {
customContainer = {
args = [
]
command = [
]
containerImage = "springio/gs-spring-boot-docker"
languageFramework = ""
server = "docker.io"
}
type = "Container"
}
}
sku = {
capacity = 1
name = "E0"
tier = "Enterprise"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}