An elegant web & terminal interface for Unitech/PM2.
Compatible with PM2 v0.12.7+ If you wanna update to pm2-gui@latest, make sure you've read the change logs.
- Features
- Cautions
- Installation
- CLI
- Authorization
- UI/UX
- Serving apps locally with nginx and custom domain
Commands:
start [options] [port] Launch the web server, port default by 8088
mon curses-like dashboard
config show all configs
set <key> <value> set config by key-value pairs
rm <key> remove config by key
Options:
-h, --help output usage information
-v, --version output the version number
Basic Examples:
Start the web server, by default port (8088):
$ pm2-gui start
Start the web server, by specific port (8090):
$ pm2-gui start 8090
Start the web server, by specific configuration file (pm2-gui.ini):
$ pm2-gui start --config
Start the web server, by specific configuration file:
$ pm2-gui start --config my-config.ini
<a name="dashboard" />
## Curses-like dashboard
**Only working on unix system**
```bash
Usage: mon [options]
Options:
-h, --help output usage information
Options:
-h, --help output usage information
--config [file] pass ".ini" configuration file (with options)
--no-debug hide stdout / stderr information
<a name="daemonize" />
## daemonize
```bash
# start
$ nohup pm2-gui start > /dev/null 2>&1 & echo $! > /path/to/pm2-gui.pid
# stop
$ kill -9 `cat /path/to/pm2-gui.pid`
Some screenshots:
Curses-like dashboard:
Backend (without --no-debug
option):
Auth
Processes
Describe Complete Information
CPU && Memory Usage
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream pm2-gui {
server 127.0.0.1:8000;
}
server {
listen 80;
server_name pm2-gui.dev;
#useless but can not get rid of.
root /path/to/pm2-gui/web/public;
try_files $uri/index.html $uri.html $uri @app;
# paths
location @app {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://pm2-gui;
}
# socket.io
location /socket.io {
proxy_pass http://pm2-gui;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
$ npm test
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.