[英]How to deploy to Azure Cloud Service
Azure的默认教程介绍了如何从头开始创建项目,并将其部署到Azure Cloud Service。 在尝试部署现有项目时,我遇到了意想不到的问题。
所以,我所拥有的是存储在GIT中的几个项目的Web解决方案。 在解决方案中有一个主项目,它包含所有关系,并且在构建此项目的文件夹之后就可以部署到服务器了。
问题是 - 如何为Azure部署配置项目,并通过CLI工具为其构建部署包?
经过一段时间的研究,我找到了一个有效的解决方案。
旧网站解决方案应该准备一点:
Cloud -> Azure Project
类型向解决方案添加新项目,但不要在此步骤中选择角色; 在此步骤中,您可以从Visual Studio的下拉菜单中部署解决方案,如“发布...”或“包...”。 但首先配置你的角色。
要自动部署程序包,只需执行此处描述的脚本即可。 这是我发现的最干净的脚本,它正在制作任何Azure SDK的部署过程。
要创建自动项目包,只需运行以下powershell脚本:
$project = resolve-path ".\..\relative\path\to\azure\deploy\project.ccproj"
Import-Module -Name ".\Invoke-MsBuild.psm1"
$buildSucceeded = Invoke-MsBuild -Path $project -P '/p:configuration=release /p:overwritereadonlyfiles=true /p:targetprofile="Cloud" /target:Clean;Publish'
if ($buildSucceeded)
{ Write-Host "Build completed successfully." }
else
{ Write-Host "Build failed. Check the build log file for errors." }
对于此脚本,您将需要Invoke-MsBuild 。
这绝对是可能的。 如果使用Azure网站,您可以执行git-deploy,dropbox等。如果是Cloud Services(Web角色),您可以通过visual studio(IDE或命令行)构建,然后使用PowerShell部署该程序包。
编辑使用PowerShell的快速示例,在本地创建云服务(通过New-AzureServiceProject和[Add-AzureWebRole( http://msdn.microsoft.com/en-us/library/windowsazure/dn205203.aspx )):
New-AzureServiceProject -ServiceName myservice
Add-AzureWebRole -Name MyWebRole
您可以将代码添加到创建的Web角色,并使用msbuild构建它(以及cspack将其打包)。 然后,您可以通过New-AzureDeployment使用PowerShell部署构建的包:
New-AzureDeployment -ServiceName "mynewservice" -Slot "production -Package packagepath -Configuration configpath -Label "my service deployment"
请注意,使用包和配置路径,它们可以是本地的也可以是blob(在调用New-AzureDeployment
之前,您需要将它们上载到New-AzureDeployment
)。 另请参阅Publish-AzureServiceProject 。
注意 :Azure PowerShell cmdlet参考位于此处 。 但是......如果您在PS命令行输入get-help *azure*
,您将看到最新的cmdlet,然后您可以查看各个cmdlet的帮助。
除此之外,我不确定你到底想要什么。 但我强烈建议花一些时间使用命令行工具+文档 ,以及在asp.net + Azure上运行一些基本教程,例如这个用于Web站点和这个用于云服务(特别是介绍视频)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.