Comment append un mode de production à l’application sailsjs lorsque vous utilisez PM2

Pour démarrer sailsjs en mode production, vous devez append --prod .

Exécuter: node app.js --prod

J’utilise PM2 et un simple fichier JSON pour les parameters, qui contient le nom du processus et le nom du script, pour lancer le processus du nœud.

Comment pourrais-je passer l’argument de production en utilisant PM2?

Lisez la déclaration de l’application JSON PM2 . P. ex. (Non testé)

 [{ "name" : "Sails", "script" : "./app.js", "args" : "['--prod']" }] 

première suppression: pm2 delete app

encore:

pm2 start app.js -x -- --prod

Vous pouvez également utiliser quelque chose comme ceci:

 NODE_ENV=production pm2 start app.js 

Selon le document officiel, vous pouvez le faire comme ceci:

 pm2 start app.js -x --prod 

Pour pm2, si vous avez créé le fichierosystems.config.js que vous devez créer dans un premier temps conformément à ce document officiel . Par défaut, il considérera le mode de développement et si vous voulez changer, supprimez d’abord l’instance précédente avec la commande suivante.

 pm2 delete  

Ensuite, vous démarrez l’instance avec la commande suivante.

 pm2 start ecosystem.config.js --env production 

Et pour vérifier le processus, suivez les journaux de pm2 avec la commande suivante.

 pm2 logs 

Voici mon fichier de configuration pour PM2 et plusieurs services sont exécutés sous PM2, ci-dessous, apps.json

 { "apps": [ { "name" : "TEST_APP", "script" : "./app.js", "cwd" : "/Users/username/app", "merge_logs" : true, "out_file" : "logs/pm2-out.log", "error_file" : "logs/pm2-err.log", "instances" : 3, "exec_mode" : "cluster", "env" : { "NODE_ENV": "dev", "PORT": "9999" }, "env_production": { "NODE_ENV": "production", "PORT": 9998 } } ] }