stop see processes name logs delete custom app node.js production pm2

node.js - see - pm2 stop daemon



¿Cómo pasar el nodo v8 args y script args a pm2? (4)

Necesito poder iniciar la aplicación a continuación con pm2 pero no sé cómo iniciarla con pm2.

node --expose-gc bin/www arg1 arg2 arg3

Sé sobre --node-args pero creo que es solo para --expose-gc.


Después de algunas excavaciones, descubrí que lo que estaba buscando era el doble guión en Linux.

El código normal,

node --expose-gc bin/www arg1 arg2 arg3

El mismo código usando pm2

pm2 start bin/www --node-args="--expose-gc" -- arg1 arg2 arg3

Todos los argumentos v8 que tienes que colocar dentro de --node-args y todos los argumentos de scrips para ser capturados desde process.argv tienes que ponerlos después del doble guión.

Espero que en el futuro implementen algo enlace --script-args = "arg1 arg2 arg3". Sería muy bueno para aquellos que no son expertos en linux.


Otra forma es crear un archivo json de declaración de aplicación donde especifique la clave args . Mira la documentation en el sitio de PM2.

Ejemplo de archivo pm2.json :

{ "apps" : [{ "name" : "appname", "script" : "app.js", "args" : ["-s", "123"], "node_args" : "--harmony", "merge_logs" : true, "cwd" : "/this/is/a/path/to/start/script", "env": { "NODE_ENV": "production" } }] }

Y ejecútalo de la siguiente manera:

$ pm2 start pm2.json


Tuve que exponer-gc en mi pm2 process.js, así que hice lo siguiente:

{ "apps" : [ { "name" : "app", "script" : "bin/www", "instances" : 2, "exec_mode" : "cluster", "watch" : false, "node_args" : "--expose-gc", "env" : {"NODE_ENV": "development"} } ] }


puede agregar cualquier argumento personalizado después de -x -- ,

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

y argumento de nodo como --node-args="--harmony"

pm2 start app.js --node-args="--harmony"

Ambos

pm2 start app.js --node-args="--harmony" -x -- --prod