【问题标题】:Yeoman Full-Stack Generator and Nodejitsu deploymentYeoman 全栈生成器和 Nodejitsu 部署
【发布时间】:2014-12-08 01:46:37
【问题描述】:

我使用 Daftmonk 的 Yeoman Full-stack generator 作为我正在制作的应用程序的脚手架。我想使用 Nodejitsu 的 nodejs 服务来运行它。但是当我部署时,我得到了一系列级联的错误,即使错误在 jitsu 的 cli 中停止,应用程序也无法部署并给出找不到文件。

我猜测错误即将到来,因为在我的本地主机上,Grunt 正在将我的应用程序打包到一个 dist/ 文件夹中。而且我认为 Nodejitsu 无法解释这一点。

有没有人成功地在 nodejitsu 上部署了一个以这种方式使用 Grunt 的 nodejs 应用程序?抱歉,如果这个问题含糊不清,我很乐意详细说明,但我迷路了!

【问题讨论】:

    标签: node.js angularjs gruntjs yeoman nodejitsu


    【解决方案1】:

    我还将 yeoman 与 Angular Fullstack 一起使用。有趣的是,这些工具如何如此接近工作,但让您,开发人员在部署时陷入困境。这实际上不是一个答案。这更像是一个承认问题的支持性帖子。这是我发现的。

    • Yeoman 喜欢您运行 grunt serve:dist 以了解缩小的构建将是什么样子。这会将您的所有生产代码放入 /dist/public
    • Nodejitsu 运行时会运行 node server/app.js
    • 不幸的是,这让 nodejitsu 查找 dist 而不是 dist/public,因此无法找到文件

    ------请参阅下文以获得更好的答案-----

    我一直在玩这个,事实证明,答案几乎太简单了,尤其是使用 nodejitsu。我假设你已经安装了 nodejitsu 工具:

    [sudo] npm install jitsu -g

    我还假设您已按照此处所述进行注册:

    https://www.nodejitsu.com/documentation/jitsu/

    现在,真的很容易。

    • 运行grunt。这将缩小和丑化您的代码。我在使用 uglify 时遇到了一些问题(很多人似乎都有),因此我将其添加到 Gruntfile.js 以解决问题。结果显然 js 更大,但头痛因素对我来说是值得的:

    将其添加到 initConfig 部分(仅当您收到与从浏览器控制台加载模块相关的错误时才执行此步骤)。

    // Uglify Exceptions uglify: { options: { mangle: false } },

    运行 grunt 会将所有内容放入 /dist/public。

    现在

    • cd /dist
    • jitsu deploy

    一切对我来说都很完美。这里的关键是在运行 jitsu deploy 时位于 dist 目录中。这样,它只会部署生产编译的代码。

    【讨论】:

      猜你喜欢
      • 2015-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-30
      相关资源
      最近更新 更多