Skip to content

Instantly share code, notes, and snippets.

@stablexbt
Created February 12, 2026 12:38
Show Gist options
  • Select an option

  • Save stablexbt/3e2945e36065c3d25c656a63cc4ef596 to your computer and use it in GitHub Desktop.

Select an option

Save stablexbt/3e2945e36065c3d25c656a63cc4ef596 to your computer and use it in GitHub Desktop.
pm2 process manager

PM2

  • Install
npm i -g pm2
  • Start
pm2 start app.js --name my-api
  • Cluster mode
# Start maximum processes with LB depending on available CPUs 
pm2 start app.js -i 0 

# Scales app up by 3 workers
pm2 scale app +3  

# Scales app up or down to 2 workers total
pm2 scale app 2 
  • List
# Display all processes status pm2 jlist # Print process list in raw JSON pm2 prettylist # Print process list in beautified JSON
pm2 list 

# Display all informations about a specific process
pm2 describe 0 

# Monitor all processes
pm2 monit 
  • Logs
# Display all processes logs in streaming 
pm2 logs [--raw] 

# Empty all log files pm2 reloadLogs # Reload all logs
pm2 flush 
  • Actions
# Stop all processes pm2 restart all # Restart all processes
pm2 stop all 

# Will 0s downtime reload (for NETWORKED apps)
pm2 reload all 

# Stop specific process id pm2 restart 0 # Restart specific process id
pm2 stop 0 

# Will remove process from pm2 list 
pm2 delete 0

# Will remove all processes from pm2 list
pm2 delete all 
  • Misc
# Reset meta data (restarted time...) 
pm2 reset

# Update in memory pm2
pm2 updatePM2  

# Ensure pm2 daemon has been launched
pm2 ping  

# Send system signal to script
pm2 sendSignal SIGUSR2 my-app 

pm2 start app.js --no-daemon 

pm2 start app.js --no-vizion 

pm2 start app.js --no-autorestart

pm2 start [echo.py](http://echo.py/)

pm2 start "pipenv run python -m scripts.script1"

pm2 start test.bash --interpreter bash
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment