从本地 Git 存储库创建 Web 应用并部署代码

此示例脚本使用其相关资源,在应用服务中创建 Web 应用,然后从本地 Git 存储库部署 Web 应用代码。

必要时,请遵照 Azure PowerShell 指南中的说明更新到最新版本的 Azure PowerShell,并运行 Connect-AzAccount -Environment AzureChinaCloud 来与 Azure 建立连接。 此外,需将应用程序代码提交到本地 Git 存储库。

示例脚本

注意

建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az

$gitdirectory="<Replace with path to local Git repo>"
$webappname="mywebapp$(Get-Random)"

cd $gitdirectory

# Create a web app and set up Git deployement.
New-AzWebApp -Name $webappname

# Configure GitHub deployment from your GitHub repo and deploy once.
$PropertiesObject = @{
    scmType = "LocalGit";
}
Set-AzResource -Properties $PropertiesObject -ResourceGroupName $webappname `
-ResourceType Microsoft.Web/sites/config -ResourceName $webappname/web `
-ApiVersion 2015-08-01 -Force

# Get publishing profile for the web app
$xml = [xml](Get-AzWebAppPublishingProfile -Name $webappname `
-ResourceGroupName $webappname `
-OutputFile null)

# Extract connection information from publishing profile
$username = $xml.SelectNodes("//publishProfile[@publishMethod=`"MSDeploy`"]/@userName").value
$password = $xml.SelectNodes("//publishProfile[@publishMethod=`"MSDeploy`"]/@userPWD").value

# Set git remote
git remote add azure https://${username}:$password@$webappname.scm.chinacloudsites.cn:443/$webappname.git

# Push your code to the new Azure remote
git push azure master

清理部署

运行脚本示例后,可以使用以下命令删除资源组、Web 应用以及所有相关资源。

Remove-AzResourceGroup -Name $webappname -Force

脚本说明

此脚本使用以下命令。 表中的每条命令均链接到特定于命令的文档。

命令 说明
New-AzWebApp 使用所需的资源组和应用服务组创建 Web 应用。 如果当前目录包含 Git 存储库,则还要添加 azure 远程控制。
Set-AzResource 修改资源组中的资源。
Get-AzWebAppPublishingProfile 获取 Web 应用的发布配置文件。

后续步骤

有关 Azure PowerShell 模块的详细信息,请参阅 Azure PowerShell 文档

可以在 Azure PowerShell 示例中找到 Azure 应用服务 Web 应用的其他 Azure PowerShell 示例。