共用方式為


New-AzDeployment

在目前的訂用帳戶範圍建立部署。

語法

New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateFile <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterObject <Hashtable>
   -TemplateObject <Hashtable>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterObject <Hashtable>
   -TemplateFile <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterObject <Hashtable>
   -TemplateUri <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterObject <Hashtable>
   -TemplateSpecId <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterFile <String>
   -TemplateObject <Hashtable>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterFile <String>
   -TemplateFile <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterFile <String>
   -TemplateUri <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterFile <String>
   -TemplateSpecId <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterFile <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterUri <String>
   -TemplateObject <Hashtable>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterUri <String>
   -TemplateFile <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterUri <String>
   -TemplateUri <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateParameterUri <String>
   -TemplateSpecId <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateObject <Hashtable>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateUri <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzDeployment
   [-Name <String>]
   -Location <String>
   [-DeploymentDebugLogLevel <String>]
   [-Tag <Hashtable>]
   [-WhatIfResultFormat <WhatIfResultFormat>]
   [-WhatIfExcludeChangeType <String[]>]
   [-ProceedIfNoChange]
   [-AsJob]
   [-QueryString <String>]
   -TemplateSpecId <String>
   [-SkipTemplateParameterPrompt]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

New-AzDeployment Cmdlet 會在目前的訂用帳戶範圍新增部署。 這包括部署所需的資源。

Azure 資源是使用者管理的 Azure 實體。 資源可以存在於資源群組中,例如資料庫伺服器、資料庫、網站、虛擬機或記憶體帳戶。 或者,它可以是訂用帳戶層級資源,例如角色定義、原則定義等。

若要將資源新增至資源群組,請使用 New-AzResourceGroupDeployment,以在資源群組建立部署。 New-AzDeployment Cmdlet 會在目前的訂用帳戶範圍建立部署,以部署訂用帳戶層級資源。

若要在訂用帳戶中新增部署,請指定位置和範本。 位置會告訴 Azure Resource Manager 儲存部署數據的位置。 範本是 JSON 字串,其中包含要部署的個別資源。 此範本包含必要資源和可設定屬性值的參數佔位元元,例如名稱和大小。

若要使用自定義範本進行部署,請指定templateFile 參數或 TemplateUri 參數。 每個範本都有可設定屬性的參數。 若要指定範本參數的值,請指定 TemplateParameterFile 參數或 TemplateParameterObject 參數。 或者,您可以在指定範本時,使用動態新增至命令的範本參數。 若要使用動態參數,請在命令提示字元中輸入它們,或輸入減號 (-) 來指出參數,並使用 Tab 鍵來迴圈查看可用的參數。 您在命令提示字元輸入的樣本參數值優先於範本參數物件或檔案中的值。

範例

範例 1:使用自定義範本和參數檔案來建立部署

New-AzDeployment -Location "West US" -TemplateFile "D:\Azure\Templates\EngineeringSite.json" -TemplateParameterFile "D:\Azure\Templates\EngSiteParms.json" -Tag @{"key1"="value1"; "key2"="value2";}

此命令會使用自定義範本和磁碟上的範本檔案,搭配已定義的tags參數,在目前的訂用帳戶範圍建立新的部署。 此命令會使用 TemplateFile 參數來指定範本和 TemplateParameterFile 參數,以指定包含參數和參數值的檔案。

範例 2:使用 URI 和 SAS 令牌部署儲存在非公用記憶體帳戶中的範本

New-AzDeployment -Location "West US" -TemplateUri "https://example.com/example.json" -QueryString "foo"

此命令會使用TemplateUri中不是公用的範本來建立新的部署,而且需要令牌參數才能存取會使用QueryString參數所提供的令牌參數。 執行此命令會使用 url https://example.com/example.json?foo有效地存取範本。 如果您想要在記憶體帳戶中使用範本,請藉由提供 SAS 令牌作為 QueryString,即可使用此選項

範例 3:使用自定義範本物件和參數檔案來建立部署

$TemplateFileText = [System.IO.File]::ReadAllText("D:\Azure\Templates\EngineeringSite.json")
$TemplateObject = ConvertFrom-Json $TemplateFileText -AsHashtable
New-AzDeployment -Location "West US" -TemplateObject $TemplateObject -TemplateParameterFile "D:\Azure\Templates\EngSiteParams.json"

此命令會使用已轉換成記憶體內部哈希表之磁碟上的自定義範本和範本檔案,在目前訂用帳戶範圍建立新的部署。 前兩個命令會讀取磁碟上範本檔案的文字,並將其轉換為記憶體內部哈希表。 最後一個命令會使用 TemplateObject 參數來指定這個哈希表,以及 TemplateParameterFile 參數來指定包含參數和參數值的檔案。

範例 4:使用 .bicepparam 檔案建立部署

New-AzDeployment -Location "West US" -TemplateParameterFile "./parameters.bicepparam"

此命令會使用磁碟上的 .bicepparam 檔案,在目前的訂用帳戶範圍建立新的部署。 此命令會使用 TemplateParameterFile 參數來指定 .bicepparam 檔案。

參數

-AsJob

在背景執行 Cmdlet

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DefaultProfile

用於與 Azure 通訊的認證、帳戶、租用戶和訂用帳戶。

類型:IAzureContextContainer
別名:AzContext, AzureRmContext, AzureCredential
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DeploymentDebugLogLevel

部署偵錯記錄層級。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Location

儲存部署數據的位置。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-Name

要建立的部署名稱。 如果未指定,則會在提供範本檔案時預設為範本檔名;默認為提供樣板物件的目前時間,例如 「20131223140835」。。

類型:String
別名:DeploymentName
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Pre

設定時,表示 Cmdlet 在自動判斷要使用的版本時,應該使用發行前版本 API 版本。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-ProceedIfNoChange

請勿要求確認 What-If 結果中是否有任何變更。 適用於設定 -Confirm 參數時。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-QueryString

要與 TemplateUri 參數搭配使用的查詢字串(例如 SAS 令牌)。 會用於連結的範本

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-SkipTemplateParameterPrompt

略過 PowerShell 動態參數處理,檢查提供的範本參數是否包含範本所使用的所有必要參數。 這項檢查會提示使用者提供遺漏參數的值,但提供 -SkipTemplateParameterPrompt 會在找不到參數時立即忽略這個提示,並在範本中找不到參數時立即發生錯誤。 針對非互動式腳本,您可以提供 -SkipTemplateParameterPrompt,以在不符合所有必要參數的情況下,提供更好的錯誤訊息。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Tag

要放在部署上的標記。

類型:Hashtable
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-TemplateFile

範本檔案的本機路徑。 支援的範本檔類型:json 和 bicep。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-TemplateObject

表示範本的哈希表。

類型:Hashtable
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-TemplateParameterFile

要用於範本的參數檔案。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-TemplateParameterObject

表示參數的哈希表。

類型:Hashtable
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-TemplateParameterUri

範本參數檔案的 URI。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-TemplateSpecId

要部署之 templateSpec 的資源識別碼。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-TemplateUri

範本檔案的 URI。

類型:String
Position:Named
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIfExcludeChangeType

要從 What-If 結果中排除的逗號分隔資源變更類型。 適用於設定 -WhatIf 或 -Confirm 參數時。

類型:String[]
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIfResultFormat

What-If 結果格式。

類型:WhatIfResultFormat
接受的值:ResourceIdOnly, FullResourcePayloads
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

Hashtable

String

輸出

PSDeployment