部署生产MEAN堆栈应用程序的准则

时间:2015-10-30 13:15:44

标签: angularjs node.js git mongodb heroku

部署生产MEAN Stack应用程序的指南。

我从Full Stack开发开始,我每周都在研究新闻主题。但是,在项目开始时找到应该使用的新东西真的很常见。

我对此的第一眼就给了我这样的清单:

  • Node Express API。
  • MongoDB正在运行。
  • API上的角度连接。

他们,我已经开始为Heroku找到一些在线解决方案,如Heroku,Modulus和MongoLab。后来,Grunt,Karma,GitHub,Travis CI以及许多改变我代码的“理解”。

我没有'清单',我想我将来会使用Grunt。因此,当我创建一个新应用时,我的步骤如下:

  • TDD:后端的Karma,前端的Mocha。*
  • 带有JWT,Mongoose,ENV变量和连接数据库的Node Express API。
  • MongoLab成立。
  • 公共代码应该被修改和缩小。图像应该是精灵。*
  • Angular App连接API。
  • Git Push to'Staging'。
  • Travis CI运行测试。
  • 如果测试通过,Heroku会上传构建。

*我还不知道如何做到这一点。

好吧,我还没有做任何商业广告,但我假装很快就推出了一些个人应用程序。这真让我烦恼。我已经阅读了大约10本技术书籍,完成了数十个在线课程,并在过去6个月内学习了很多教程。所有关于MEAN相关的事情,但我不相信在云上部署完整的生产应用程序。

我知道可能会有一些主观的答案,但答案最终会是客观的,因为我知道我们有市场标准。有人可能不同意特定的工具,但会使用类似的工具来实现相同的目标。有人可能不会使用100%,但会使用90%左右。

所以,我想知道应该怎样做才能完成并按市场标准运行?

回答暂停

正如我所说,答案不能太宽泛,因为有市场标准。有人可能会使用某些技术来实现与使用其他技术的人相同的目标。我正在寻找具体的指导方针,我不是在寻找具体的平台。完整的答案可能包括敏捷方法和软件需求,而更简单的答案可能包括文本编辑器,版本控制和集成阶段。如果这还不够,我会再次阅读规则并忘记这个问题。不管怎样,谢谢。

1 个答案:

答案 0 :(得分:0)

部署生产MEAN Stack应用程序的指南。

  • 除此之外,我喜欢使用具有基于咕噜声的app角度fullstack生成器的yeoman
  • TDD:Mocha与Chai on backend,Karma与茉莉花在Frontend上。
  • 具有JWT,Mongoose,ENV变量和连接数据库的Node Express API。如果你想要ECMAScript 2015,请使用babel。在我的情况下,我也喜欢使用bluebird。
  • MongoLab成立了。 heroku addons:create mongolab
  • 在API上连接Angular App。我选择ui-router,并编辑生成的一点角度代码,例如,更改为controllerAs而不是使用范围。
  • 公共代码应该是连接的,uglified和minified。图像应该是精灵。通过grunt build任务创建一个新的dist文件夹,使用类似app的prod,这样做还有很多。
  • 关于测试,grunt test将完成工作。或者grunt test:servergrunt test:client分开。
  • generator heroku deploy yo angular-fullstack:heroku
顺便说一句,我确实喜欢你的问题,同样的事情发生在我身上,也许还在发生。但我不打算回答你的问题,我只想分享我的经验。