Microsoft.Resources deploymentScripts 2023-08-01
言論
若要瞭解如何在部署期間執行文稿,請參閱 在 Bicep 中使用部署腳本,或 在 ARM 範本中使用部署文稿。
Bicep 資源定義
deploymentScripts 資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Resources/deploymentScripts 資源,請將下列 Bicep 新增至範本。
resource symbolicname 'Microsoft.Resources/deploymentScripts@2023-08-01' = {
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
tags: {
{customized property}: 'string'
}
kind: 'string'
// For remaining properties, see Microsoft.Resources/deploymentScripts objects
}
Microsoft.Resources/deploymentScripts 物件
設定 種類 屬性,以指定對象的類型。
針對 AzureCLI,請使用:
{
kind: 'AzureCLI'
properties: {
arguments: 'string'
azCliVersion: 'string'
cleanupPreference: 'string'
containerSettings: {
containerGroupName: 'string'
subnetIds: [
{
id: 'string'
name: 'string'
}
]
}
environmentVariables: [
{
name: 'string'
secureValue: 'string'
value: 'string'
}
]
forceUpdateTag: 'string'
primaryScriptUri: 'string'
retentionInterval: 'string'
scriptContent: 'string'
storageAccountSettings: {
storageAccountKey: 'string'
storageAccountName: 'string'
}
supportingScriptUris: [
'string'
]
timeout: 'string'
}
}
針對 azurePowerShell
{
kind: 'AzurePowerShell'
properties: {
arguments: 'string'
azPowerShellVersion: 'string'
cleanupPreference: 'string'
containerSettings: {
containerGroupName: 'string'
subnetIds: [
{
id: 'string'
name: 'string'
}
]
}
environmentVariables: [
{
name: 'string'
secureValue: 'string'
value: 'string'
}
]
forceUpdateTag: 'string'
primaryScriptUri: 'string'
retentionInterval: 'string'
scriptContent: 'string'
storageAccountSettings: {
storageAccountKey: 'string'
storageAccountName: 'string'
}
supportingScriptUris: [
'string'
]
timeout: 'string'
}
}
屬性值
AzureCliScript
名字 | 描述 | 價值 |
---|---|---|
類 | 腳本的類型。 | 'AzureCLI' (必要) |
性能 | Azure CLI 文本對象的屬性。 | AzureCliScriptProperties (必要) |
AzureCliScriptProperties
名字 | 描述 | 價值 |
---|---|---|
參數 | 要傳遞至腳本的命令行自變數。 自變數會以空格分隔。 例如: -Name 藍色* -Location '美國西部 2' | 字串 |
azCliVersion | 要使用的 Azure CLI 模組版本。 | 字串 (必要) |
cleanupPreference | 當腳本執行處於終端機狀態時,清除喜好設定。 默認設定為 『Always』。 | 'Always' 'OnExpiration' 'OnSuccess' |
containerSettings | 容器設定。 | ContainerConfiguration |
environmentVariables | 要傳遞至腳本的環境變數。 | EnvironmentVariable[] |
forceUpdateTag | 取得或設定部署腳本應該如何強制執行,即使腳本資源尚未變更也一樣。 可以是目前的時間戳或 GUID。 | 字串 |
primaryScriptUri | 腳本的 URI。 這是外部腳本的進入點。 | 字串 |
retentionInterval | 服務到達終端機狀態之後,會保留腳本資源的間隔。 此持續時間到期時,將會刪除資源。 持續時間是以 ISO 8601 模式為基礎(例如 P1D 表示一天)。 | 字串 (必要) |
scriptContent | 腳本本文。 | 字串 |
storageAccountSettings | 記憶體帳戶設定。 | StorageAccountConfiguration |
supportingScriptUris | 支援外部腳本的檔案。 | string[] |
超時 | ISO 8601 格式所指定的允許腳本運行時間上限。 預設值為 P1D | 字串 |
AzurePowerShellScript
名字 | 描述 | 價值 |
---|---|---|
類 | 腳本的類型。 | 'AzurePowerShell' (必要) |
性能 | Azure PowerShell 腳本對象的屬性。 | AzurePowerShellScriptProperties (必要) |
AzurePowerShellScriptProperties
名字 | 描述 | 價值 |
---|---|---|
參數 | 要傳遞至腳本的命令行自變數。 自變數會以空格分隔。 例如: -Name 藍色* -Location '美國西部 2' | 字串 |
azPowerShellVersion | 要使用的 Azure PowerShell 模組版本。 | 字串 (必要) |
cleanupPreference | 當腳本執行處於終端機狀態時,清除喜好設定。 默認設定為 『Always』。 | 'Always' 'OnExpiration' 'OnSuccess' |
containerSettings | 容器設定。 | ContainerConfiguration |
environmentVariables | 要傳遞至腳本的環境變數。 | EnvironmentVariable[] |
forceUpdateTag | 取得或設定部署腳本應該如何強制執行,即使腳本資源尚未變更也一樣。 可以是目前的時間戳或 GUID。 | 字串 |
primaryScriptUri | 腳本的 URI。 這是外部腳本的進入點。 | 字串 |
retentionInterval | 服務到達終端機狀態之後,會保留腳本資源的間隔。 此持續時間到期時,將會刪除資源。 持續時間是以 ISO 8601 模式為基礎(例如 P1D 表示一天)。 | 字串 (必要) |
scriptContent | 腳本本文。 | 字串 |
storageAccountSettings | 記憶體帳戶設定。 | StorageAccountConfiguration |
supportingScriptUris | 支援外部腳本的檔案。 | string[] |
超時 | ISO 8601 格式所指定的允許腳本運行時間上限。 預設值為 P1D | 字串 |
ContainerConfiguration
名字 | 描述 | 價值 |
---|---|---|
containerGroupName | 如果未指定容器組名,則名稱將會自動產生。 未指定 『containerGroupName』 表示系統產生唯一名稱,最終可能會將 Azure 原則標示為不符合規範。 當您有預期特定命名慣例或想要完全控制名稱的 Azure 原則時,請使用 『containerGroupName』。 'containerGroupName' 屬性長度必須介於 1 到 63 個字元之間,必須只包含小寫字母、數位和破折號,而且不能以破折號和連續虛線開頭或結尾。 若要指定 'containerGroupName',請將下列物件新增至屬性: { “containerSettings”: { “containerGroupName”: “contoso-container” } }。 如果您不想要指定 'containerGroupName',則請勿新增 'containerSettings' 属性。 | 字串 約束: 最小長度 = 1 最大長度 = 1 |
subnetIds | 容器群組的子網資源標識碼。 | ContainerGroupSubnetId[] |
ContainerGroupSubnetId
名字 | 描述 | 價值 |
---|---|---|
id | 子網的資源標識碼。 | 字串 (必要) |
名字 | 子網的易記名稱。 | 字串 |
DeploymentScriptTags
名字 | 描述 | 價值 |
---|
EnvironmentVariable
名字 | 描述 | 價值 |
---|---|---|
名字 | 環境變數的名稱。 | 字串 (必要) |
secureValue | 安全環境變數的值。 | 字串 約束: 敏感性值。 以安全參數的形式傳入。 |
價值 | 環境變數的值。 | 字串 |
ManagedServiceIdentity
名字 | 描述 | 價值 |
---|---|---|
類型 | 受控識別的類型。 | 'UserAssigned' |
userAssignedIdentities | 與資源相關聯的使用者指派受控識別清單。 密鑰是受控識別的 Azure 資源識別碼。 | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
名字 | 描述 | 價值 |
---|
Microsoft.Resources/deploymentScripts
名字 | 描述 | 價值 |
---|---|---|
身份 | 選擇性屬性。 要用於此部署腳本的受控識別。 目前僅支援使用者指派的 MSI。 | ManagedServiceIdentity |
類 | 針對 azureCliScript 類型 設定為 'AzureCLI',。 針對 azurePowerShellScript 類型 設定為 'AzurePowerShell',。 | 'AzureCLI' 'AzurePowerShell' (必要) |
位置 | 部署腳本的 ACI 和記憶體帳戶的位置。 | 字串 (必要) |
名字 | 資源名稱 | 字串 約束: 最小長度 = 1 最大長度 = 1 (必要) |
標籤 | 資源標籤 | 標記名稱和值的字典。 請參閱範本中的 標籤 |
StorageAccountConfiguration
名字 | 描述 | 價值 |
---|---|---|
storageAccountKey | 儲存體帳戶存取金鑰。 | 字串 約束: 敏感性值。 以安全參數的形式傳入。 |
storageAccountName | 儲存體帳戶名稱。 | 字串 |
UserAssignedIdentity
名字 | 描述 | 價值 |
---|
快速入門範例
下列快速入門範例會部署此資源類型。
Bicep 檔案 | 描述 |
---|---|
搭配 Helm |
使用 Azure Container Service 部署受控叢集 (AKS) 與 Helm |
使用 Azure Windows 基準 |
建立 Azure Image Builder 環境,並建置已套用最新 Windows Update 和 Azure Windows 基準的 Windows Server 映射。 |
使用 ACR 工作 建置容器映像 | 此範本會使用 DeploymentScript 協調 ACR,從程式代碼存放庫建置容器映射。 |
設定開發箱服務 | 此範本會根據 Dev Box 快速入門指南 (/azure/dev-box/quickstart-create-dev-box) 建立所有 Dev Box 管理員資源。 您可以檢視所有建立的資源,或直接移至 DevPortal.microsoft.com 來建立您的第一個開發方塊。 |
將檔案從 uri 複製到 blob 記憶體容器 | 此課程模組會從 URI 下載檔案,並將其複製到 Azure storageAccount Blob 容器。 storageAccount 必須已經存在,而且來源檔案必須已暫存至 URI。 |
為數據處理站複製數據工具建立 Blob 快速入門 | 此範本會建立 Blob 記憶體,並上傳複製資料工具快速入門的檔案 |
建立具有複雜輸入的部署腳本 & 輸出 | 此範本示範將複雜輸入、輸出和記錄傳遞和讀取至 Az CLI 部署腳本的最佳做法 |
建立具有複雜輸入的部署腳本 & 輸出 | 此範本示範將複雜輸入、輸出和記錄傳遞和讀取至 Az Powershell 部署腳本的最佳做法 |
建立 WordPress 網站 | 此範本會在容器實例上建立 WordPress 網站 |
使用 Prometheus 和 Grafana 建立具有 privae 連結的 AKS | 這會在 Azure Kubernetes Service (AKS) 叢集上建立 Azure grafana、AKS 並安裝 Prometheus、開放原始碼監視和警示工具組。 然後使用 Azure Managed Grafana 的受控私人端點來連線到此 Prometheus 伺服器,並在 Grafana 儀錶板中顯示 Prometheus 數據 |
建立 Azure Machine Learning 掃掠作業 | 此範本會建立 Azure Machine Learning 掃掠作業以進行超參數微調。 |
建立 Azure 虛擬網路管理員和範例 VNET | 此範本會將 Azure 虛擬網路管理員和範例虛擬網路部署到具名資源群組中。 它支援多個連線拓撲和網路群組成員資格類型。 |
使用永續性記憶體建立隨選 SFTP 伺服器 | 此範本示範使用 Azure 容器實例 (ACI) 的隨選 SFTP 伺服器。 |
使用憑證建立應用程式閘道 | 此範本示範如何產生 Key Vault 自我簽署憑證,然後從應用程式閘道參考。 |
使用登錄建立容器應用程式和環境 | 使用 Azure Container Registry 的基本容器應用程式建立容器應用程式環境。 它也會部署Log Analytics工作區來儲存記錄。 |
使用 Container Apps 建立 Dapr 微服務應用程式 | 使用 Container Apps 建立 Dapr 微服務應用程式。 |
使用 Container Apps 建立 Dapr pub-sub servicebus 應用程式 | 使用 Container Apps 建立 Dapr pub-sub servicebus 應用程式。 |
部署簡單的 Azure Spring Apps 微服務應用程式 | 此範本會部署簡單的 Azure Spring Apps 微服務應用程式,以在 Azure 上執行。 |
部署靜態網站 | 使用備份記憶體帳戶部署靜態網站 |
FinOps 中樞 | 此範本會建立新的 FinOps 中樞實例,包括 Data Lake 記憶體和 Data Factory。 |
使用靜態網站來源 Front Door Standard/Premium | 此範本會建立 Front Door Standard/Premium 和 Azure 記憶體靜態網站,並設定 Front Door 將流量傳送至靜態網站。 |
將容器映像匯入 ACR | 此範本會利用 bicep 登錄中的匯入 ACR 模組,將公用容器映射匯入 Azure Container Registry。 |
Azure Data Factory 可以 更多 - 按兩下即可嘗試 Azure Data Factory | 此範本會建立數據處理站管線,以將複製活動從 Azure Blob 複製到另一個 Azure Blob |
適用於 Azure 防火牆進階 |
此範本會建立具有進階功能的 Azure 防火牆進階和防火牆原則,例如入侵檢測 (IDPS)、TLS 檢查和 Web 類別篩選 |
使用部署腳本建立 Azure AD 物件 | 此範例會使用部署腳本在 Azure Active Directory 中建立物件。 |
ARM 樣本資源定義
deploymentScripts 資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Resources/deploymentScripts 資源,請將下列 JSON 新增至範本。
{
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"name": "string",
"tags": {
"{customized property}": "string"
},
"kind": "string"
// For remaining properties, see Microsoft.Resources/deploymentScripts objects
}
Microsoft.Resources/deploymentScripts 物件
設定 種類 屬性,以指定對象的類型。
針對 AzureCLI,請使用:
{
"kind": "AzureCLI",
"properties": {
"arguments": "string",
"azCliVersion": "string",
"cleanupPreference": "string",
"containerSettings": {
"containerGroupName": "string",
"subnetIds": [
{
"id": "string",
"name": "string"
}
]
},
"environmentVariables": [
{
"name": "string",
"secureValue": "string",
"value": "string"
}
],
"forceUpdateTag": "string",
"primaryScriptUri": "string",
"retentionInterval": "string",
"scriptContent": "string",
"storageAccountSettings": {
"storageAccountKey": "string",
"storageAccountName": "string"
},
"supportingScriptUris": [ "string" ],
"timeout": "string"
}
}
針對 azurePowerShell
{
"kind": "AzurePowerShell",
"properties": {
"arguments": "string",
"azPowerShellVersion": "string",
"cleanupPreference": "string",
"containerSettings": {
"containerGroupName": "string",
"subnetIds": [
{
"id": "string",
"name": "string"
}
]
},
"environmentVariables": [
{
"name": "string",
"secureValue": "string",
"value": "string"
}
],
"forceUpdateTag": "string",
"primaryScriptUri": "string",
"retentionInterval": "string",
"scriptContent": "string",
"storageAccountSettings": {
"storageAccountKey": "string",
"storageAccountName": "string"
},
"supportingScriptUris": [ "string" ],
"timeout": "string"
}
}
屬性值
AzureCliScript
名字 | 描述 | 價值 |
---|---|---|
類 | 腳本的類型。 | 'AzureCLI' (必要) |
性能 | Azure CLI 文本對象的屬性。 | AzureCliScriptProperties (必要) |
AzureCliScriptProperties
名字 | 描述 | 價值 |
---|---|---|
參數 | 要傳遞至腳本的命令行自變數。 自變數會以空格分隔。 例如: -Name 藍色* -Location '美國西部 2' | 字串 |
azCliVersion | 要使用的 Azure CLI 模組版本。 | 字串 (必要) |
cleanupPreference | 當腳本執行處於終端機狀態時,清除喜好設定。 默認設定為 『Always』。 | 'Always' 'OnExpiration' 'OnSuccess' |
containerSettings | 容器設定。 | ContainerConfiguration |
environmentVariables | 要傳遞至腳本的環境變數。 | EnvironmentVariable[] |
forceUpdateTag | 取得或設定部署腳本應該如何強制執行,即使腳本資源尚未變更也一樣。 可以是目前的時間戳或 GUID。 | 字串 |
primaryScriptUri | 腳本的 URI。 這是外部腳本的進入點。 | 字串 |
retentionInterval | 服務到達終端機狀態之後,會保留腳本資源的間隔。 此持續時間到期時,將會刪除資源。 持續時間是以 ISO 8601 模式為基礎(例如 P1D 表示一天)。 | 字串 (必要) |
scriptContent | 腳本本文。 | 字串 |
storageAccountSettings | 記憶體帳戶設定。 | StorageAccountConfiguration |
supportingScriptUris | 支援外部腳本的檔案。 | string[] |
超時 | ISO 8601 格式所指定的允許腳本運行時間上限。 預設值為 P1D | 字串 |
AzurePowerShellScript
名字 | 描述 | 價值 |
---|---|---|
類 | 腳本的類型。 | 'AzurePowerShell' (必要) |
性能 | Azure PowerShell 腳本對象的屬性。 | AzurePowerShellScriptProperties (必要) |
AzurePowerShellScriptProperties
名字 | 描述 | 價值 |
---|---|---|
參數 | 要傳遞至腳本的命令行自變數。 自變數會以空格分隔。 例如: -Name 藍色* -Location '美國西部 2' | 字串 |
azPowerShellVersion | 要使用的 Azure PowerShell 模組版本。 | 字串 (必要) |
cleanupPreference | 當腳本執行處於終端機狀態時,清除喜好設定。 默認設定為 『Always』。 | 'Always' 'OnExpiration' 'OnSuccess' |
containerSettings | 容器設定。 | ContainerConfiguration |
environmentVariables | 要傳遞至腳本的環境變數。 | EnvironmentVariable[] |
forceUpdateTag | 取得或設定部署腳本應該如何強制執行,即使腳本資源尚未變更也一樣。 可以是目前的時間戳或 GUID。 | 字串 |
primaryScriptUri | 腳本的 URI。 這是外部腳本的進入點。 | 字串 |
retentionInterval | 服務到達終端機狀態之後,會保留腳本資源的間隔。 此持續時間到期時,將會刪除資源。 持續時間是以 ISO 8601 模式為基礎(例如 P1D 表示一天)。 | 字串 (必要) |
scriptContent | 腳本本文。 | 字串 |
storageAccountSettings | 記憶體帳戶設定。 | StorageAccountConfiguration |
supportingScriptUris | 支援外部腳本的檔案。 | string[] |
超時 | ISO 8601 格式所指定的允許腳本運行時間上限。 預設值為 P1D | 字串 |
ContainerConfiguration
名字 | 描述 | 價值 |
---|---|---|
containerGroupName | 如果未指定容器組名,則名稱將會自動產生。 未指定 『containerGroupName』 表示系統產生唯一名稱,最終可能會將 Azure 原則標示為不符合規範。 當您有預期特定命名慣例或想要完全控制名稱的 Azure 原則時,請使用 『containerGroupName』。 'containerGroupName' 屬性長度必須介於 1 到 63 個字元之間,必須只包含小寫字母、數位和破折號,而且不能以破折號和連續虛線開頭或結尾。 若要指定 'containerGroupName',請將下列物件新增至屬性: { “containerSettings”: { “containerGroupName”: “contoso-container” } }。 如果您不想要指定 'containerGroupName',則請勿新增 'containerSettings' 属性。 | 字串 約束: 最小長度 = 1 最大長度 = 1 |
subnetIds | 容器群組的子網資源標識碼。 | ContainerGroupSubnetId[] |
ContainerGroupSubnetId
名字 | 描述 | 價值 |
---|---|---|
id | 子網的資源標識碼。 | 字串 (必要) |
名字 | 子網的易記名稱。 | 字串 |
DeploymentScriptTags
名字 | 描述 | 價值 |
---|
EnvironmentVariable
名字 | 描述 | 價值 |
---|---|---|
名字 | 環境變數的名稱。 | 字串 (必要) |
secureValue | 安全環境變數的值。 | 字串 約束: 敏感性值。 以安全參數的形式傳入。 |
價值 | 環境變數的值。 | 字串 |
ManagedServiceIdentity
名字 | 描述 | 價值 |
---|---|---|
類型 | 受控識別的類型。 | 'UserAssigned' |
userAssignedIdentities | 與資源相關聯的使用者指派受控識別清單。 密鑰是受控識別的 Azure 資源識別碼。 | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
名字 | 描述 | 價值 |
---|
Microsoft.Resources/deploymentScripts
名字 | 描述 | 價值 |
---|---|---|
apiVersion | API 版本 | '2023-08-01' |
身份 | 選擇性屬性。 要用於此部署腳本的受控識別。 目前僅支援使用者指派的 MSI。 | ManagedServiceIdentity |
類 | 針對 azureCliScript 類型 設定為 'AzureCLI',。 針對 azurePowerShellScript 類型 設定為 'AzurePowerShell',。 | 'AzureCLI' 'AzurePowerShell' (必要) |
位置 | 部署腳本的 ACI 和記憶體帳戶的位置。 | 字串 (必要) |
名字 | 資源名稱 | 字串 約束: 最小長度 = 1 最大長度 = 1 (必要) |
標籤 | 資源標籤 | 標記名稱和值的字典。 請參閱範本中的 標籤 |
類型 | 資源類型 | 'Microsoft.Resources/deploymentScripts' |
StorageAccountConfiguration
名字 | 描述 | 價值 |
---|---|---|
storageAccountKey | 儲存體帳戶存取金鑰。 | 字串 約束: 敏感性值。 以安全參數的形式傳入。 |
storageAccountName | 儲存體帳戶名稱。 | 字串 |
UserAssignedIdentity
名字 | 描述 | 價值 |
---|
快速入門範本
下列快速入門範本會部署此資源類型。
範本 | 描述 |
---|---|
搭配 Helm |
使用 Azure Container Service 部署受控叢集 (AKS) 與 Helm |
使用 Azure Windows 基準 |
建立 Azure Image Builder 環境,並建置已套用最新 Windows Update 和 Azure Windows 基準的 Windows Server 映射。 |
使用 ACR 工作 建置容器映像 |
此範本會使用 DeploymentScript 協調 ACR,從程式代碼存放庫建置容器映射。 |
設定開發箱服務 |
此範本會根據 Dev Box 快速入門指南 (/azure/dev-box/quickstart-create-dev-box) 建立所有 Dev Box 管理員資源。 您可以檢視所有建立的資源,或直接移至 DevPortal.microsoft.com 來建立您的第一個開發方塊。 |
將檔案從 uri 複製到 blob 記憶體容器 |
此課程模組會從 URI 下載檔案,並將其複製到 Azure storageAccount Blob 容器。 storageAccount 必須已經存在,而且來源檔案必須已暫存至 URI。 |
為數據處理站複製數據工具建立 Blob 快速入門 |
此範本會建立 Blob 記憶體,並上傳複製資料工具快速入門的檔案 |
建立具有複雜輸入的部署腳本 & 輸出 |
此範本示範將複雜輸入、輸出和記錄傳遞和讀取至 Az CLI 部署腳本的最佳做法 |
建立具有複雜輸入的部署腳本 & 輸出 |
此範本示範將複雜輸入、輸出和記錄傳遞和讀取至 Az Powershell 部署腳本的最佳做法 |
建立 WordPress 網站 |
此範本會在容器實例上建立 WordPress 網站 |
使用 Prometheus 和 Grafana 建立具有 privae 連結的 AKS |
這會在 Azure Kubernetes Service (AKS) 叢集上建立 Azure grafana、AKS 並安裝 Prometheus、開放原始碼監視和警示工具組。 然後使用 Azure Managed Grafana 的受控私人端點來連線到此 Prometheus 伺服器,並在 Grafana 儀錶板中顯示 Prometheus 數據 |
建立 Azure Machine Learning 掃掠作業 |
此範本會建立 Azure Machine Learning 掃掠作業以進行超參數微調。 |
建立 Azure 虛擬網路管理員和範例 VNET |
此範本會將 Azure 虛擬網路管理員和範例虛擬網路部署到具名資源群組中。 它支援多個連線拓撲和網路群組成員資格類型。 |
使用永續性記憶體建立隨選 SFTP 伺服器 |
此範本示範使用 Azure 容器實例 (ACI) 的隨選 SFTP 伺服器。 |
使用憑證建立應用程式閘道 |
此範本示範如何產生 Key Vault 自我簽署憑證,然後從應用程式閘道參考。 |
建立 ssh-keys 並儲存在 KeyVault |
此範本會使用 deploymentScript 資源來產生 ssh 金鑰,並將私鑰儲存在 keyVault 中。 |
使用登錄建立容器應用程式和環境 |
使用 Azure Container Registry 的基本容器應用程式建立容器應用程式環境。 它也會部署Log Analytics工作區來儲存記錄。 |
使用 Container Apps 建立 Dapr 微服務應用程式 |
使用 Container Apps 建立 Dapr 微服務應用程式。 |
使用 Container Apps 建立 Dapr pub-sub servicebus 應用程式 |
使用 Container Apps 建立 Dapr pub-sub servicebus 應用程式。 |
部署簡單的 Azure Spring Apps 微服務應用程式 |
此範本會部署簡單的 Azure Spring Apps 微服務應用程式,以在 Azure 上執行。 |
部署靜態網站 |
使用備份記憶體帳戶部署靜態網站 |
FinOps 中樞 |
此範本會建立新的 FinOps 中樞實例,包括 Data Lake 記憶體和 Data Factory。 |
使用靜態網站來源 Front Door Standard/Premium |
此範本會建立 Front Door Standard/Premium 和 Azure 記憶體靜態網站,並設定 Front Door 將流量傳送至靜態網站。 |
使用遠端建置 在 Linux 取用方案中 |
此範本會在 Linux 取用方案上佈建函式應用程式,並在程式碼部署期間執行遠端建置。 應用程式會視需要執行,而您每次執行都會計費,且不需任何常設資源承諾。 |
將容器映像匯入 ACR |
此範本會利用 bicep 登錄中的匯入 ACR 模組,將公用容器映射匯入 Azure Container Registry。 |
從 ZIP 封存 URL 匯入 VHD Blob |
根據特製化磁碟映像部署虛擬機需要將 VHD 檔案匯入記憶體帳戶。 如果單一 ZIP 中壓縮了多個 VHD 檔案,而且您取得擷取 ZIP 封存的 URL,此 ARM 範本會簡化作業:下載、擷取和匯入現有的記憶體帳戶 Blob 容器。 |
min.io Azure 閘道 |
完全私人 min.io Azure 閘道部署,以提供由 Blob 記憶體支援的 S3 相容記憶體 API |
Azure Data Factory 可以 更多 - 按兩下即可嘗試 Azure Data Factory |
此範本會建立數據處理站管線,以將複製活動從 Azure Blob 複製到另一個 Azure Blob |
適用於 Azure 防火牆進階 |
此範本會建立具有進階功能的 Azure 防火牆進階和防火牆原則,例如入侵檢測 (IDPS)、TLS 檢查和 Web 類別篩選 |
使用部署腳本建立 Azure AD 物件 |
此範例會使用部署腳本在 Azure Active Directory 中建立物件。 |
Terraform (AzAPI 提供者) 資源定義
deploymentScripts 資源類型可以使用目標作業來部署:
- 資源群組
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Resources/deploymentScripts 資源,請將下列 Terraform 新增至範本。
resource "azapi_resource" "symbolicname" {
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
location = "string"
name = "string"
tags = {
{customized property} = "string"
}
kind = "string"
// For remaining properties, see Microsoft.Resources/deploymentScripts objects
}
Microsoft.Resources/deploymentScripts 物件
設定 種類 屬性,以指定對象的類型。
針對 AzureCLI,請使用:
{
kind = "AzureCLI"
properties = {
arguments = "string"
azCliVersion = "string"
cleanupPreference = "string"
containerSettings = {
containerGroupName = "string"
subnetIds = [
{
id = "string"
name = "string"
}
]
}
environmentVariables = [
{
name = "string"
secureValue = "string"
value = "string"
}
]
forceUpdateTag = "string"
primaryScriptUri = "string"
retentionInterval = "string"
scriptContent = "string"
storageAccountSettings = {
storageAccountKey = "string"
storageAccountName = "string"
}
supportingScriptUris = [
"string"
]
timeout = "string"
}
}
針對 azurePowerShell
{
kind = "AzurePowerShell"
properties = {
arguments = "string"
azPowerShellVersion = "string"
cleanupPreference = "string"
containerSettings = {
containerGroupName = "string"
subnetIds = [
{
id = "string"
name = "string"
}
]
}
environmentVariables = [
{
name = "string"
secureValue = "string"
value = "string"
}
]
forceUpdateTag = "string"
primaryScriptUri = "string"
retentionInterval = "string"
scriptContent = "string"
storageAccountSettings = {
storageAccountKey = "string"
storageAccountName = "string"
}
supportingScriptUris = [
"string"
]
timeout = "string"
}
}
屬性值
AzureCliScript
名字 | 描述 | 價值 |
---|---|---|
類 | 腳本的類型。 | 'AzureCLI' (必要) |
性能 | Azure CLI 文本對象的屬性。 | AzureCliScriptProperties (必要) |
AzureCliScriptProperties
名字 | 描述 | 價值 |
---|---|---|
參數 | 要傳遞至腳本的命令行自變數。 自變數會以空格分隔。 例如: -Name 藍色* -Location '美國西部 2' | 字串 |
azCliVersion | 要使用的 Azure CLI 模組版本。 | 字串 (必要) |
cleanupPreference | 當腳本執行處於終端機狀態時,清除喜好設定。 默認設定為 『Always』。 | 'Always' 'OnExpiration' 'OnSuccess' |
containerSettings | 容器設定。 | ContainerConfiguration |
environmentVariables | 要傳遞至腳本的環境變數。 | EnvironmentVariable[] |
forceUpdateTag | 取得或設定部署腳本應該如何強制執行,即使腳本資源尚未變更也一樣。 可以是目前的時間戳或 GUID。 | 字串 |
primaryScriptUri | 腳本的 URI。 這是外部腳本的進入點。 | 字串 |
retentionInterval | 服務到達終端機狀態之後,會保留腳本資源的間隔。 此持續時間到期時,將會刪除資源。 持續時間是以 ISO 8601 模式為基礎(例如 P1D 表示一天)。 | 字串 (必要) |
scriptContent | 腳本本文。 | 字串 |
storageAccountSettings | 記憶體帳戶設定。 | StorageAccountConfiguration |
supportingScriptUris | 支援外部腳本的檔案。 | string[] |
超時 | ISO 8601 格式所指定的允許腳本運行時間上限。 預設值為 P1D | 字串 |
AzurePowerShellScript
名字 | 描述 | 價值 |
---|---|---|
類 | 腳本的類型。 | 'AzurePowerShell' (必要) |
性能 | Azure PowerShell 腳本對象的屬性。 | AzurePowerShellScriptProperties (必要) |
AzurePowerShellScriptProperties
名字 | 描述 | 價值 |
---|---|---|
參數 | 要傳遞至腳本的命令行自變數。 自變數會以空格分隔。 例如: -Name 藍色* -Location '美國西部 2' | 字串 |
azPowerShellVersion | 要使用的 Azure PowerShell 模組版本。 | 字串 (必要) |
cleanupPreference | 當腳本執行處於終端機狀態時,清除喜好設定。 默認設定為 『Always』。 | 'Always' 'OnExpiration' 'OnSuccess' |
containerSettings | 容器設定。 | ContainerConfiguration |
environmentVariables | 要傳遞至腳本的環境變數。 | EnvironmentVariable[] |
forceUpdateTag | 取得或設定部署腳本應該如何強制執行,即使腳本資源尚未變更也一樣。 可以是目前的時間戳或 GUID。 | 字串 |
primaryScriptUri | 腳本的 URI。 這是外部腳本的進入點。 | 字串 |
retentionInterval | 服務到達終端機狀態之後,會保留腳本資源的間隔。 此持續時間到期時,將會刪除資源。 持續時間是以 ISO 8601 模式為基礎(例如 P1D 表示一天)。 | 字串 (必要) |
scriptContent | 腳本本文。 | 字串 |
storageAccountSettings | 記憶體帳戶設定。 | StorageAccountConfiguration |
supportingScriptUris | 支援外部腳本的檔案。 | string[] |
超時 | ISO 8601 格式所指定的允許腳本運行時間上限。 預設值為 P1D | 字串 |
ContainerConfiguration
名字 | 描述 | 價值 |
---|---|---|
containerGroupName | 如果未指定容器組名,則名稱將會自動產生。 未指定 『containerGroupName』 表示系統產生唯一名稱,最終可能會將 Azure 原則標示為不符合規範。 當您有預期特定命名慣例或想要完全控制名稱的 Azure 原則時,請使用 『containerGroupName』。 'containerGroupName' 屬性長度必須介於 1 到 63 個字元之間,必須只包含小寫字母、數位和破折號,而且不能以破折號和連續虛線開頭或結尾。 若要指定 'containerGroupName',請將下列物件新增至屬性: { “containerSettings”: { “containerGroupName”: “contoso-container” } }。 如果您不想要指定 'containerGroupName',則請勿新增 'containerSettings' 属性。 | 字串 約束: 最小長度 = 1 最大長度 = 1 |
subnetIds | 容器群組的子網資源標識碼。 | ContainerGroupSubnetId[] |
ContainerGroupSubnetId
名字 | 描述 | 價值 |
---|---|---|
id | 子網的資源標識碼。 | 字串 (必要) |
名字 | 子網的易記名稱。 | 字串 |
DeploymentScriptTags
名字 | 描述 | 價值 |
---|
EnvironmentVariable
名字 | 描述 | 價值 |
---|---|---|
名字 | 環境變數的名稱。 | 字串 (必要) |
secureValue | 安全環境變數的值。 | 字串 約束: 敏感性值。 以安全參數的形式傳入。 |
價值 | 環境變數的值。 | 字串 |
ManagedServiceIdentity
名字 | 描述 | 價值 |
---|---|---|
類型 | 受控識別的類型。 | 'UserAssigned' |
userAssignedIdentities | 與資源相關聯的使用者指派受控識別清單。 密鑰是受控識別的 Azure 資源識別碼。 | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
名字 | 描述 | 價值 |
---|
Microsoft.Resources/deploymentScripts
名字 | 描述 | 價值 |
---|---|---|
身份 | 選擇性屬性。 要用於此部署腳本的受控識別。 目前僅支援使用者指派的 MSI。 | ManagedServiceIdentity |
類 | 針對 azureCliScript 類型 設定為 'AzureCLI',。 針對 azurePowerShellScript 類型 設定為 'AzurePowerShell',。 | 'AzureCLI' 'AzurePowerShell' (必要) |
位置 | 部署腳本的 ACI 和記憶體帳戶的位置。 | 字串 (必要) |
名字 | 資源名稱 | 字串 約束: 最小長度 = 1 最大長度 = 1 (必要) |
標籤 | 資源標籤 | 標記名稱和值的字典。 |
類型 | 資源類型 | “Microsoft.Resources/deploymentScripts@2023-08-01” |
StorageAccountConfiguration
名字 | 描述 | 價值 |
---|---|---|
storageAccountKey | 儲存體帳戶存取金鑰。 | 字串 約束: 敏感性值。 以安全參數的形式傳入。 |
storageAccountName | 儲存體帳戶名稱。 | 字串 |
UserAssignedIdentity
名字 | 描述 | 價值 |
---|