为什么要在服务器上创build一个MEAN应用程序?

我的问题更多的是战略方面而不是实际执行。

基本上我想知道为什么我们要在服务器上构build我们的MEAN应用程序? 而构build我的意思是获取组件(npm安装&& bower安装),并做所有concat和缩小的东西。

我试图创build我的构build系统,直到现在我一直在使用John Papa构build系统的版本,但是我的构build在服务器上花费的时间越来越长。 那么在本地构build所有东西并将其部署到服务器是不是有意义? 还是我错过了什么?

谢谢

构build不应该在运行时发生。 你有部分权利,build立前期,比部署创build的工件。

但关键的想法是持续集成 。 意思是不在本地机器上的构build服务器,它从SCM获取代码,构build它,运行testing,创build可部署的工件并将其存储在某个工件存储库(例如npmregistry)中。

如果您进一步考虑,并且您还自动将工件部署到非PROD环境中,则您将开始深入了解连续交付空间。

如果此构build和部署pipe道将工件安装到每次提交的PROD中,那么您正在进行连续部署工作。

编辑 – 对评论的反应:

主要想法是让它连续 。 意思是, 完整的构build定期启动,最好每个提交/ git推

如果这是在本地机器上configuration的,而你是一家男士商店,那可能是好的。 但是,当我在各种项目的空闲时间里玩的时候,发现每一次提交的构build都可能是我的本地机器的资源密集型,并且对于某些第三方服务(尤其是免费的)而言,这是很方便的。

CI服务器有很多在线解决scheme。 我用成功http://codeship.com和http://drone.iohttp://cloudbees.com给你托pipejenkins。 对于开源项目,他们是免费的。

如果你的项目不是开源的,你将需要花费一些钱,但它应该是一个人的项目便宜。