部署生产 MEAN Stack 应用程序的指南 [关闭]

Posted

技术标签:

【中文标题】部署生产 MEAN Stack 应用程序的指南 [关闭]【英文标题】:Guidelines to deploy a production MEAN Stack app [closed] 【发布时间】:2016-01-30 22:24:39 【问题描述】:

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

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

我第一眼看到的就是这样一份清单:

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

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

我没有“清单”,我认为将来我会使用 Grunt 来完成。因此,当我创建一个新应用程序时,我的步骤如下:

TDD:后端的 Karma,前端的 Mocha。* Node Express API 与 JWT、Mongoose、ENV 变量并连接到 DB。 MongoLab 已设置完毕。 公共代码应该被丑化和缩小。并且图像应该是精灵。* Angular 应用程序连接到 API。 Git 推送到“暂存”。 Travis CI 运行测试。 如果测试通过,Heroku 上传构建。

*我还不知道该怎么做。

好吧,我还没有做任何商业活动,但我假装很快就会推出一些单独的应用程序。这真的让我很恼火。在过去的 6 个月里,我阅读了大约 10 本技术书籍,完成了数十门在线课程并学习了很多教程。关于 MEAN 相关的所有内容,但我还没有信心在云上部署完整的生产应用程序。

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

那么,我想知道应该怎么做才能完成并按照市场标准运行?

回答暂停

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

【问题讨论】:

“但我还没有自信”——如果你不开始,你永远不会感到足够自信。可能发生的最坏情况是什么?会有一个错误,你会修复它。这就是程序员每天每天都在做的事情(创建错误并修复它们:)) 我已经将应用程序投入生产。但是没有发布到市场上,我想先学习如何做好测试。但我同意你的评论。可能发生的最糟糕的情况是没有人访问我的系统或者它崩溃了。 :) 日复一日,它会有所改善,但您必须定义哪些会更好且易于管理。 【参考方案1】:

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

除此之外,我喜欢将 yeoman 与 angular fullstack 生成器和基于 grunt 的应用程序一起使用 TDD:后端带有 chai 的 Mocha,前端带有 jasmine 的 Karma。 Node Express API 与 JWT、Mongoose、ENV 变量并连接到 DB。如果你想要 ECMAScript 2015,可以使用 babel。就我而言,我也喜欢使用 bluebird。 MongoLab 已设置。 heroku addons:create mongolab Angular 应用程序连接到 API。我选择了 ui-router,并编辑了一些生成的角度代码,例如,更改为 controllerAs 而不是使用范围。 公共代码应该是连接、丑化和缩小的。图像应该是精灵。通过grunt build 任务来创建一个新的 dist 文件夹,其中包含类似应用程序的产品。 关于测试,grunt test 将完成这项工作。或者分别grunt test:servergrunt test:client。 generator heroku deploy yo angular-fullstack:heroku

顺便说一句,我确实喜欢你的问题,同样的事情发生在我身上,也许仍然会发生。但我不是要回答你的问题,我只是想分享我的经验。

【讨论】:

我很喜欢你的回答。很好的贡献,谢谢! :)

以上是关于部署生产 MEAN Stack 应用程序的指南 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

部署 MEAN Stack 应用程序,托管问题

在将MEAN Stack应用程序部署到AWS EC2时设置环境变量

Node.js MEAN Stack App 在本地工作,但无法部署到 Heroku

MEAN STACK APP部署HEROKU问题 MongoNetworkError: failed to connect to server

docker swarm 集群服务编排部署指南(docker stack)

nginx 中 MEAN-stack 应用程序的漂亮 url