Aquila Management is a dashboard made with Node.js, React and MaterialUI, that allows to monitor servers through agents (Aquila Probe). It allows to check server statistics (like CPU load, percentage of RAM taken etc), the ports used and the associated processes. It also allows to monitor and interact with applications launched with Docker or pm2. Thanks to Aquila Probe, the project can also be used as an interface between HTTP requests and system scripts.
If you want to run it in a development mode (the front is not pre-built and two processes are launch) :
- yarn install
- cp packages/aquila-management-front/.env.example packages/aquila-management-front/.env
- cp packages/aquila-management-api/data/serversList.example.json packages/aquila-management-api/data/serversList.json
- npm run start:both
If you want to run it in a production mode (the front is build and only one process is launch) :
- yarn install
- cp packages/aquila-management-front/.env.example packages/aquila-management-front/.env
- npm run build
- cp packages/aquila-management-api/data/serversList.example.json packages/aquila-management-api/data/serversList.json
- cp packages/aquila-management-api/ecosystem.config.example.cjs packages/aquila-management-api/ecosystem.config.cjs (for security purpose, please change the PORT variable)
- npm run start:pm2
Aquila Management has been developed in a modular way.
To create a module you can start from the Sample-Module located in packages/aquila-management-front/src/modules
for the front end and packages/aquila-management-api/modules
for the API.
To manually install a module, put the folder of your module in packages/aquila-management-front/src/modules
or packages/aquila-management-api/modules
.
You also need to modify a file, the packages/aquila-management-front/src/modules/index.jsx
file for the front end and the packages/aquila-management-api/modules/modulesRoutes.json
file for the API.