Azure Cloud shell 使用发布配置文件发布 Web 应用程序

Azure Cloud shell to publish Web App using publish profile

Azure Cloud Shell 无法导入可从 Web 应用程序概览中导出的 发布配置文件 (即“MyWebApp.PublishSettings”)在 Azure 中,可以在 Visual Studio 中使用它来发布 Web 应用程序。我正在尝试找到要使用 Azure Cloud Shell(可能是 az webapp up ...)执行的命令,但它要求我先使用 az login ... 登录。对于 Visual Studio,发布配置文件 文件就足够了,不需要登录。我如何才能像 Visual Studio 那样使用 发布配置文件 ,但使用 Azure 云 Shell?

I am trying to find the commands to execute with the Azure Cloud Shell (az webapp up ... perhaps), but it requires me to sign in first, using az login ...

当你使用azure cloud shell时,它会自动使用登录azure portal的帐户,所以不需要再次使用az login登录,只需使用命令az webapp up 直接地。你应该注意,命令 az webapp up 需要从代码所在的文件夹中 运行,所以你可能需要先将你的代码上传到云端 shell(我还没有测试了它,不确定它是否在云中工作shell。)

实际上,如果你想使用publish profile来部署webapp,我推荐的最简单的方法是在本地use the kudu api via powershell,打开一个powershell 本地会话和 运行 下面的命令,你可以在发布配置文件中找到 $password

$username = "`$webappname"
$password = "xxxxxxx"
# Note that the $username here should look like `SomeUserName`, and **not** `SomeSite\SomeUserName`
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $username, $password)))
$userAgent = "powershell/1.0"

$apiUrl = "https://joywebapp.scm.azurewebsites.net/api/zipdeploy"
$filePath = "C:\Users\joyw\Desktop\testdep.zip"
Invoke-RestMethod -Uri $apiUrl -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Method POST -InFile $filePath -ContentType "multipart/form-data"