如何在 GCE 上部署 expressjs

时间:2021-02-08 13:53:28

标签: node.js express google-cloud-platform google-compute-engine

我正在尝试在 GCE 上使用 Expressjs 部署 Web 服务器,但在控制台上一直出现错误:

<username>@instance-1:~/repository$ sudo node main.js
node:events:355
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE: address already in use :::80
    at Server.setupListenHandle [as _listen2] (node:net:1310:16)
    at listenInCluster (node:net:1358:12)
    at Server.listen (node:net:1445:7)
    at Function.listen (/home/<username>/repository/node_modules/express/lib/application.js:618:24)
    at Object.<anonymous> (/home/<username>/repository/main.js:52:5)
    at Module._compile (node:internal/modules/cjs/loader:1108:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1137:10)
    at Module.load (node:internal/modules/cjs/loader:973:32)
    at Function.Module._load (node:internal/modules/cjs/loader:813:14)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
Emitted 'error' event on Server instance at:
    at emitErrorNT (node:net:1337:8)
    at processTicksAndRejections (node:internal/process/task_queues:81:21) {
  code: 'EADDRINUSE',
  errno: -98,
  syscall: 'listen',
  address: '::',
  port: 80

(只改了我的用户名,其他的直接从控制台复制)

我看到使用 App Engine 进行部署的文档,但每次我在 App Engine 上部署项目时,他们总是说超出了某些内容。我使用的是免费套餐,所以我认为这就是原因。

无论如何,我的 nodejs 脚本侦听端口 6806,并且我允许从 GCP 防火墙进出端口访问端口。我也改变了IP地址。 请有人指导我正确的方法。谢谢,

附注。抱歉英语不好

0 个答案:

没有答案