有没有办法可以将整个网站/ webapp部署到Azure WebRole而无需Visual Studio?
上下文 :我们有一个测试环境,其中有一个IIS托管的Web应用程序,我们的测试人员测试(当然)。问题是,我们希望获取经过测试的Web应用程序文件夹并将其“按原样”部署到WebRole。
请避免评论我们的程序,我们一直在关注它,如果必须,我们最终会改变它,我只需要一个'简单'是(如何)/无答案。
答案 0 :(得分:2)
IIS Web Deploy可用于打包/迁移/还原IIS应用程序。如this article中所述,可以在部署Web角色时启用它,并允许使用在测试环境中部署的应用程序更新Web角色。
请注意,仅支持单实例云服务,并且在结构控制器进行维护操作的情况下,您的服务将回滚到初始azure软件包部署创建的状态。 (曾经有一个用于在多实例Web部署之间进行同步的工具,但遗憾的是,它不能很好地工作并且不再受支持。不要尝试使用或重建它。)
Installing and Configuring Web Deploy显示了为本地测试IIS进行Web部署的步骤,而articles on using web deploy显示了调用该工具的示例{/ 3}}。
评估的另一个选项是this one和azure websites。这可以为您提供记录且可重现的部署形式,在不允许不必要的回滚的同时允许服务扩展到多个实例。如果应用程序过于依赖于Web角色基础结构或包含不适合更受限制的Web站点环境的代码,则此选项可能无效。
要查看的第三个选项是使用git deployment中提供的CSPack。您基本上创建服务定义并手动打包Web应用程序,而无需在Visual Studio或TFS中构建它。
答案 1 :(得分:1)
是 - 请确保您拥有enabled Remote Access on your webrole。然后将您的Web应用程序从本地IIS文件夹复制到F:\ sitesroot \ 0(注意 - 在相同的Web角色上可能是E:\ sitesroot \ 0)。
答案 2 :(得分:0)
是的,您可以从C#代码编写针对Web Deploy的编程接口。如果您要部署到Azure网站,还可以使用Windows Azure Management Libraries来启动新网站,或者使用它们进行部署。