带有Meteor的PM2在部署时出现错误

时间:2018-09-03 07:53:28

标签: javascript node.js meteor npm pm2

我正在使用“ pm2-meteor ”模块在我的Meteor应用程序中使用PM2。

[第一次使用PM2]

我查看了pm2-meteor中给出的文档,即:-

  

https://www.npmjs.com/package/pm2-meteor

并按照此处编写的步骤进行操作。

我还出于配置目的创建了json文件,该文件看起来像:-

{
  "appName": "test",
  "appLocation": {
    "local": "/home/test"
  },
  "meteorSettingsLocation": "/home/test/SETTINGS-DEVELOPMENT.JSON",
  "meteorSettingsInRepo": false,
  "prebuildScript": "",
  "meteorBuildFlags": "--architecture os.linux.x86_64",
  "env": {
    "ROOT_URL": "localhost:3000",
    "PORT": 3000,
    "MONGO_URL": ""
  },
  "server": {
    "host": "localhost",
    "username": "parveen",
    "password": "",
    "deploymentDir": "/opt/meteor-apps",
    "loadProfile": "",
    "interpreter": "",
    "exec_mode": "cluster_mode",
    "instances": 1
  }
} 

此后,我运行命令,即

  

pm2-流星部署

现在,此命令返回以下错误:-

events.js:165
      throw er; // Unhandled 'error' event
      ^

Error: connect ECONNREFUSED 127.0.0.1:22
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1174:14)
Emitted 'error' event at:
    at Socket.<anonymous> (/usr/local/lib/node_modules/pm2-meteor/node_modules/ssh2/lib/client.js:218:10)
    at Socket.emit (events.js:185:15)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at process._tickCallback (internal/process/next_tick.js:178:19)

据我了解,此错误可能是由于本地计算机上运行的任何其他PM2引起的。 但是我检查我的机器上是否没有其他正在运行的PM2进程。

所以请帮我解决我在这里做错了什么。我创建的JSON文件中有任何错误,或者PM2无法在本地计算机上使用。

任何帮助将不胜感激!

谢谢

1 个答案:

答案 0 :(得分:0)

错误消息:

Error: connect ECONNREFUSED 127.0.0.1:22

告诉您它无法连接到本地主机上的端口22。这意味着您要么不在本地运行sshd,要么未配置为接受连接。

虽然部署到本地计算机似乎很方便,但效果并不理想。最好使用裸机或EC2实例之类的东西进行部署