node.js - Heroku:如何部署客户端和服务器在不同端口上运行的 Node 应用程序?

标签 node.js heroku deployment server client

我有一个 nodejs API 作为服务器,React/Redux 应用程序作为客户端,位于一个 git 项目中:https://github.com/lafisrap/fcc_nightlife.git

我想使用 heroku cli 将它部署到 Heroku 上。

package.json 中的脚本部分是:

  "scripts": {
    "start-dev": "concurrently \"yarn run server\" \"yarn run client\"",
    "start": "yarn run server | yarn run client",
    "server": "babel-node server.js",
    "client": "node start-client.js",
    "lint": "eslint ."
  },

启动客户端.js:

const args = [ 'start' ];
const opts = { stdio: 'inherit', cwd: 'client', shell: true };
require('child_process').spawn('yarn', args, opts);

在客户端文件夹中,我有另一个定义客户端的 package.json。它的脚本部分:

  "scripts": {
    "start": "react-scripts start",
  }

我做到了:

heroku create
git push heroku master

API 运行良好。但是我不知道如何启动/访问客户端。

最佳答案

不能在一个 Heroku 应用中部署两项服务。简而言之,您必须将它们部署到单独的 Heroku dynos 才能部署两个应用程序。

this stackoverflow answer 中提供了更多信息到一个类似的问题。

PS: It is always an option to serve JS files from your API server after building React files.

希望这对您有所帮助!

关于node.js - Heroku:如何部署客户端和服务器在不同端口上运行的 Node 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45997828/

相关文章:

ruby-on-rails-3 - unicorn 与 Heroku 竹栈

unit-testing - 使用单元测试作为 "functionality contract"

javascript - 这是检查 javascript 中未定义值的好方法吗?

javascript - 为什么 Node 中 null > 3 false 和 null < 3 true?

javascript - 是否可以使用 Webpack 删除不活动的代码?

ios - KIK 卡 - 直接发送消息

ruby-on-rails - rails : How to reference images in CSS within Rails 4

javascript - nuxt-img 和 js 文件无法在服务器上的生产模式下加载

python - Django Web 应用程序的生产构建在访问时引发 SuspiciousFileOperation

node.js - 如何在 Nestjs 中创建 mongodb 连接提供程序