CF:ERR无法建立与端口8080的TCP连接:连接被拒绝

Pra*_*eek 1 pivotal-cloud-foundry

因此,我最近开始使用CF,并且正在使用CF将Node.js应用发布到我的CF空间。

如CF Wiki中所建议,我已经使用nodejs_buildpack来构建我的应用程序,以便可以通过CF PaaS运行。

尽管如果我将自己的缓存的node_modules依赖项文件夹推送到CF Space中,则不需要此操作,但是如果我输入错了,请更正我吗?

以下屏幕截图代表了cf push的输出,

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

输出:CF原木STARS --recent

在此处输入图片说明

manifest.yml

---
applications:
- name: STARS
  buildpack: nodejs_buildpack
  memory: 256m
  disk_quota: 512MB
  instances: 1
  command: npm run build
Run Code Online (Sandbox Code Playgroud)

我不明白8080为什么会失败,因为这在我的机器上像魅力一样起作用。即本地主机:8080

我确实以以下方式设置快递,

app.set('port', process.env.PORT || 8080);

// set up listening
app.listen(port, function (err) {
  if (err) {
    console.log(err)
  } else {
    opn('http://localhost:' + app.get('port'))
  }
})
Run Code Online (Sandbox Code Playgroud)

-更新-

正如@ K.AJ在下面的答案中所建议的那样,我试图将清单中的内存限制从256增加到512,您知道它开始起作用了。:)

但是存在内存179.4M和磁盘206.1M的分配有点奇怪。看起来在部署过程中考虑了将这两者相加。

我更新的配置是,

在此处输入图片说明

小智 6

app.set('port', process.env.PORT || 8080);

在上面的语句中,仅当在本地运行时,端口为8080。

在PCF等云平台上,您无法控制应用程序将在哪个端口上运行。

如果您仔细查看错误消息,则由于内存不足错误导致您的应用崩溃。256MB内存不足以容纳它。尝试先将其设置为1GB,使其正常运行,然后对其进行优化。

假设您已经成功部署了应用程序,请运行cf apps。它应该列出您已部署的应用程序以及路由。

复制您应用的路线网址,然后在浏览器中运行。只要您的应用实例运行正常且处于运行状态,您就应该能够看到您的应用。

请仔细阅读PCF上的文档