web-dev-qa-db-fra.com

Comment spécifier un numéro de port pour pm2

J'essaie d'utiliser pm2 pour gérer un cluster node.js

pm2 start . -i 3

J'exécute actuellement l'application sur heroku et j'utilise un Procfile avec la commande ci-dessus, mais je ne peux pas comprendre comment configurer pm2 pour utiliser la var env. PORT existante. Quelque chose comme pm2 start . -p $PORT

Qu'est-ce que je rate?

21
Luke W

Vous pouvez utiliser la variable d'environnement. Par exemple:

1) NODE_PORT = 3002 pm2 start -I 0 app.js

2) Lire la valeur dans l'application:

console.log(process.env.NODE_PORT);

Ou, si vous créez une application express:

1) PORT = 3002 pm2 start -I 0 ./bin/www

2) Express charge PORT automatiquement au démarrage de l'application.

30
stdob--

Vous devez utiliser - pour dire à pm2 d'arrêter d'analyser ses options et de donner le reste au programme, puis lorsque vous générez du binaire direct, vous devez dire à pm2 que vous ne voulez pas utiliser nodejs, donc:

pm2 start rethinkdb --interpreter none -- --port 8082

Vous voyez que vous avez besoin de -- --port 8082

0
Semir Hodzic