【发布时间】:2020-09-01 04:05:01
【问题描述】:
我最近关注了video chat tutorial,并希望将其托管在 Digitalocean 上以测试一些 webRTC 内容。我让它工作,甚至把它托管在 Heroku 上。但是,当我将它托管在一个未使用的 droplet 上(用完最初 100 美元的免费 Digitalocean 信用额度)并通过 SSH 连接到我的 droplet 并运行 npm start(是的,虽然它不在教程 github 代码中,npm start 是在package.json),我得到一个错误。
USER***@nodejs-s-1vcpu-1gb-sfo2-01:~/DIRNAME$ sudo npm start
> livestream-server@0.0.1 start /home/USER***/DIRNAME
> node app.js
events.js:292
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE: address already in use :::3000
at Server.setupListenHandle [as _listen2] (net.js:1313:16)
at listenInCluster (net.js:1361:12)
at Server.listen (net.js:1447:7)
at Object.<anonymous> (/home/USER***/ZMP_Solutions/app.js:17:8)
at Module._compile (internal/modules/cjs/loader.js:1137:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
at Module.load (internal/modules/cjs/loader.js:985:32)
at Function.Module._load (internal/modules/cjs/loader.js:878:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47
Emitted 'error' event on Server instance at:
at emitErrorNT (net.js:1340:8)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
code: 'EADDRINUSE',
errno: 'EADDRINUSE',
syscall: 'listen',
address: '::',
port: 3000
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! livestream-server@0.0.1 start: `node app.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the livestream-server@0.0.1 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
我已经阅读了read this related question 并尝试了很多东西,例如在运行npm start 时使用sudo,或者将端口设置为高于3000,但没有任何帮助。有解决办法吗?
谢谢!
【问题讨论】:
标签: node.js npm digital-ocean