An interactive and open-source management panel for PM2 instances updated in real time. It uses a Java process runner, Spring Boot (server) and React environment, server-side events and websocket protocol to send resources usage parameters and application logs in real time.
[TODO] Presentation gif
- Clone and install
- Run with Docker (simplest, not for development)
- Setup (for development)
- Create executable JAR file (bare-metal)
- Tech stack
- Author
- License
To install the program on your computer use the command (or use the built-in GIT system in your IDE environment):
$ git clone https://github.com/milosz08/pm-web-panel- Go to root directory (where file
docker-compose.ymlis located) and type:
$ docker compose up -dThis command should create 1 docker container:
| Container name | Port(s) | Description |
|---|---|---|
| pm-web-panel | 8690 | Application (client + server) |
NOTE: Application outgoing port can be changed inside
.envfile.
- Setup client:
- Go to client directory (
$ cd pwp-frontend) and install all dependencies via:
$ yarn install --frozen-lockfileNOTE: If you do not have yarn, install via:
npm i -g yarn
- Run client via:
$ yarn run dev- Setup server:
- Type (for UNIX):
$ ./gradlew :pwp-backend:runor for Windows:
.\gradlew.cmd :pwp-backend:runCheck application state via endpoint: /actuator/health. If response show this:
{
"status": "UP"
}application is running and waiting for http requests.
- Applications (client and server) should be available at ports:
| App name | Port(s) |
|---|---|
| pm-web-panel (server) | 8690 |
| pm-web-panel (client) | 8691 |
To create executable JAR file (client + server), you must type (for UNIX):
$ ./gradlew shadowJar -PbuildFrontend --no-daemonor for Windows:
.\gradlew.cmd shadowJar -PbuildFrontend --no-daemonOutput JAR file will be located inside .bin directory. With this file you can run app in
bare-metal environment without virtualization via:
$ java \
-Xms1024m \
-Xmx1024m \
-jar pm-web-panel.jar- React 19, Vite, Mui Components,
- Java 17,
- Docker containers.
Created by Miłosz Gilga. If you have any questions about this application, send message: miloszgilga@gmail.com.
This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.
