【问题标题】:Steps to Deploy Express React Redux template to Heroku将 Express React Redux 模板部署到 Heroku 的步骤
【发布时间】:2017-01-20 02:01:11
【问题描述】:

Node 和部署到 Heroku 的经验有限。我已经使用这个样板构建了一些东西:https://github.com/DimitriMikadze/express-react-redux-starter,但我不确定如何设置模板以部署到 Heroku。

任何基本步骤都会非常有帮助。谢谢!

【问题讨论】:

    标签: node.js express reactjs heroku redux


    【解决方案1】:

    Heroku 的文档真的很棒! https://devcenter.heroku.com/articles/getting-started-with-nodejs 。这将引导您部署他们的示例存储库,但您在上面链接到的入门工具包将几乎完全相同。我将通过该教程首先部署 Heroku 的示例存储库,以确保您正确安装了他们的工具包并大致了解它的工作原理,这不会花很长时间。然后我将继续部署您构建的应用程序。我知道您必须做出的一项更改是您在Procfile 中添加的内容。你需要看起来像这样: web: npm run build && npm start 希望对您有所帮助!

    【讨论】:

    • 非常感谢——我浏览了 Heroku 入门文章并成功部署了他们的示例应用程序。但是,现在当我为我的 express-react-redux-starter 工具包应用程序运行相同的步骤时,我收到了一个应用程序错误。当我查看 Heroku 日志时,我发现系统在来自 package.json 的 PORT=8080 pm2 start ./server.js 上失败——知道如何解决这个问题吗?再次感谢您!
    • 日志中是否还有其他可能有帮助的内容?
    • 啊,在该入门工具包的自述文件中:注意:我将 pm2 用于生产服务器,您应该通过“npm install pm2 -g”将它安装在服务器上。如果您不想使用 pm2,只需在脚本部分的 package.json 文件中将 pm2 更改为 node。 所以尝试将 package.json 中的 start 更改为 "start": "PORT=8080 node start ./server.js",
    • 这是 Heroku 日志的输出:gist.github.com/kimispencer/a4d22b74f42821fe283fca68fa25746d 同意这似乎是 pm2 的问题。我在 package.json 中更改为 "start": "PORT=8080 node start ./server.js" 但错误仍然存​​在...刚刚对heroku master 进行了新的推送,并在我的 git 日志中看到了对 package.json 的更改...知道为什么会更改没有被接走?谢谢!
    • 可以在节点变更后发布新的日志吗?该要点中的所有错误都在谈论 pm2
    【解决方案2】:

    Heroku + NodeJS 入门教程非常有用。在摆弄部署到 Heroku 之后,我意识到我的问题如下:

    1. pm2 依赖项——正如我建议的那样,我删除了它并将 npm start 脚本替换为 PORT=8080 node start ./server.js

    但是,这导致了单独的问题:

    A. 'start' 未定义,B. 我收到 Heroku 错误“web-process-failed-to-bind-to-port”,以及 C. 缺少 Webpack + 其他依赖项

    通过简单地删除硬编码的端口和“开始”——所以脚本现在只是 node ./server.js 以及修复任何 devDependencies 并将我的 Heroku 配置设置为 NPM_CONFIG_PRODUCTION: false 它现在可以工作了!胡扎。感谢您在这方面的帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-04
      • 2020-09-25
      • 1970-01-01
      • 2020-10-29
      • 2016-06-05
      • 2022-01-15
      • 2017-12-15
      • 2021-04-21
      相关资源
      最近更新 更多