将Loopback应用程序部署到Heroku时端口超时

rmbxnbpk  于 2022-11-13  发布在  其他
关注(0)|答案(2)|浏览(128)

我在Heroku上部署了一个Loopback应用程序,但它总是因错误而崩溃
Web process failed to bind to $PORT within 60 seconds of launch
我知道它可以连接到Heroku的动态端口,所以我将端口设置为进程环境中的一个

app.start = function () {
  // start the web server

  var port = process.env.PORT || 3000;

  app.set('port', port);

  app.use(loopback.static(path.resolve(__dirname, '../client')));
  app.use(loopback.static(path.resolve(__dirname, '../.tmp')));

  return app.listen(function () {
    app.emit('started');
    console.log('Web server listening at: %s', app.get('url'));
  });
};

但这并没有解决问题。
你知道吗?

q1qsirdb

q1qsirdb1#

你可以通过修改文档中提供的代码来强制Heroku使用提供的端口。如果你不能关联到api文档,不用担心,这是因为javascript是灵活的。

app.start = function () {
  // start the web server

  var port = process.env.PORT || 3000;

  app.use(loopback.static(path.resolve(__dirname, '../client')));
  app.use(loopback.static(path.resolve(__dirname, '../.tmp')));

  return app.listen(port, function () {
    app.emit('started');
    console.log('Web server listening at: %s', app.get('url'));
  });
};
byqmnocz

byqmnocz2#

我也遇到了同样的问题,我通过在Heroku应用程序中添加一个环境变量HOST=0.0.0.0来解决这个问题。

相关问题