过去几天,我一直在使用Octopus Deploy将ASP.Net WebAPI项目自动部署为Azure云服务。请注意,此项目包含Web角色和自定义启动脚本。在此过程中遇到了一些问题,但设法通过运行构建来完成部署,在工件上执行cspack
并在CS包中执行octo pack
。这似乎按预期工作。看起来大致如下:
现在我还需要将另一个项目部署为Azure云服务。但是,该项目是使用AngularJS框架用JavaScript编写的前端项目。我不完全确定什么是部署这个项目的最佳方式。它还需要是一个Web角色并在启动时执行自定义脚本。是否足以向其添加.csdef
,.cscfg
和启动脚本,并通过执行cspack
进行跟进?作为测试,我基本上在Visual Studio中创建了一个云服务项目,并将前端的/dist
添加到它。我宁愿有一个解决方案,不需要额外的项目。如果有人能够给我一些建议,我会很高兴,因为我现在已经过了很久了。
答案 0 :(得分:0)
如果要在启动时在云服务项目中执行自定义脚本,则相同。因为我们仍然需要一个Web服务器来托管Angularjs SPA(例如iis)。
因此,我们可以通过Visual Studio中的C#模板简单地创建云服务项目,将Angularjs应用程序放入Web Role文件夹,并修改Web角色根目录中的web.conig
文件,以更改默认页面您的Angularjs应用程序入口处的Web角色,例如index.html
。
您只需在<configuration>
中的web.config
下添加以下部分:
<system.webServer>
<defaultDocument>
<files>
<add value="index.html" />
</files>
</defaultDocument>
</system.webServer>