This Flask web application allows users to install, manage, and monitor services (called nodes) on a system running systemd. The main features of the app include:
Listing all nodes in a table, with information such as name, node, index, status (loaded, active, uptime), status message, and associated controls. Installing a new node by specifying the brand, username, email, password, and node number. Stopping, restarting, and deleting individual nodes. Stopping and restarting all nodes simultaneously. The app also includes a search function to filter nodes by username.
To be able to "run" a node and receive rewards, it is required to own a node license. More information can be found here:
Create Your Free Connect Account
The Flask app has several routes that handle different actions:
- /: Displays an overview of all nodes and their state.
- /install: Installs a new node based on the information the user provided.
- /delete///int:nodeindex: Deletes a node based on the brand, username, and node number.
- /stop/<service_name>: Stops a service based on the service name.
- /restart/<service_name>: Restarts a service based on the service name.
- /disable/<service_name>: Disables a service based on the service name.
- /restartall: Restarts all nodes.
- /stopall: Stops all nodes.
In addition to the Flask app, there is an HTML file that contains forms for adding and managing nodes, a table displaying all nodes and their state, and a search field for filtering nodes by username. JavaScript functions are included for filtering nodes by username and search value.
To run the Node Manager Flask app, follow these steps:
Install the required dependencies: Flask and dateutil. Run the Flask app by executing python app.py in your terminal. Open a web browser and navigate to http://localhost:5000 to access the Node Manager web application. Contributing If you'd like to contribute to this project, please create a fork of the repository, make your changes, and submit a pull request.
cd install .\install.sh
This project is licensed under the MIT License - see the LICENSE.md file for details.