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

时间:2018-09-27 12:18:30

标签: pivotal-cloud-foundry

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

  

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

     

尽管如果我推送自己的缓存,我不需要这个    CF Space 中的node_modules依赖文件夹,如果我输入错了,请纠正我吗?

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

enter image description here

enter image description here

enter image description here

以下内容的输出: CF记录STARS --recent

enter image description here

manifest.yml

---
applications:
- name: STARS
  buildpack: nodejs_buildpack
  memory: 256m
  disk_quota: 512MB
  instances: 1
  command: npm run build

我不明白8080为什么会失败,因为这在我的机器上像魅力一样起作用。即 localhost: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'))
  }
})

-更新-

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

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

我更新的配置为

enter image description here

1 个答案:

答案 0 :(得分:4)

Item | t1 | t2 | t3 | A 3 1 3 B 2 5 4 C.. 1 1 4

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

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

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

假设您已经成功部署了应用程序,请运行app.set('port', process.env.PORT || 8080);。它应该列出您已部署的应用程序以及路由。

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

请仔细阅读PCF上的文档