Comment ajouter le mode de production à l'application Sailsjs lors du démarrage avec PM2

StackOverflow https://stackoverflow.com//questions/23055633

  •  23-12-2019
  •  | 
  •  

Question

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

Courir:node app.js --prod

J'utilise PM2 et un simple fichier json pour les paramètres, qui contient le nom du processus et le nom du script, pour lancer le processus du nœud.

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

Était-ce utile?

La solution

Lire Déclaration d'application PM2 JSON.Par exemple.(pas testé)

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

Autres conseils

Supprimez d'abord :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 tu peux faire comme ceci :

pm2 start app.js -x --prod

Pour pm2 si vous avez créé écosystème.config.js que vous devez créer dans le premier processus selon ceci document officiel.Par défaut, il prendra en compte le mode développement et si vous souhaitez modifier, supprimez d'abord l'instance précédente avec la commande suivante.

pm2 delete <ID|APP_NAME|SCRIPT|ALL|JSON>

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 j'exécute plusieurs services sous PM2 comme l'un d'entre eux 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
                     }  
    }
  ]
}
Ensuite, exécutez simplement la commande suivante pour exécuter votre service,

$ pm2 start apps.json --env production

Vous pouvez inclure d'autres paramètres comme mentionné dans le Documents PM2 ici.J'espère que cela t'aides.

1.

NODE_ENV=production pm2 démarrer app.js -- --prod

2.

NODE_ENV=production pm2 start app.js --name "myapp" -i max -- --prod

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top