Effortlessly Manage All Your Non-Docker Self-Hosted Applications with a Single Command
- Easy Application Management: Start, stop, and restart applications with simple commands.
- Live Logs 📜: View real-time logs for each application.
- Batch Operations 🔄: Start or stop all applications at once.
- Tmux Integration 🖥️: Manage applications in isolated tmux sessions.
- User-Friendly CLI 🛠️: Intuitive command-line interface with typewriter-style branding.
- Configuration Management 🗃️: Easily configure applications using a JSON file.
- Gradient Branding 🎨: Enjoy a visually appealing gradient effect in the CLI.
To run App Ally, ensure you have the following dependencies installed:
- Python 3.6+
colorama
librarytmux
(terminal multiplexer)
You can install the required Python library using pip
:
pip install colorama
App Ally uses a config.json
file to manage application configurations. Below is an example of how to structure this file:
{
"applications": {
"example1": {
"start_command": "cd '/path/to/example1' && sudo npm start",
"log_file": "/tmp/example1.log"
},
"example2": {
"directory": "/path/to/example2",
"start_command": "cd '/path/to/example2' && sudo node server/server.js",
"log_file": "/tmp/example2.log"
}
}
}
- example1: An example application with a start command that changes the directory and starts the application using
npm start
. Logs are stored in/tmp/example1.log
. - example2: Another example application with a specified directory and a start command that uses
node
to start a server. Logs are stored in/tmp/example2.log
.
To start the App Ally, simply run:
python app_ally.py
-
Start an application:
start example1
-
Stop an application:
stop example1
-
View logs of an application:
view example1
-
List all applications:
list
-
Add a new application:
add
-
Remove an application:
remove example1
Here are some potential features App Ally could use:
- 🔲Web Interface 🌐: A web-based dashboard to manage applications.
- 🔲Notification System 🔔: Email or SMS notifications for application status changes.
- 🔲Advanced Logging 📊: Enhanced logging capabilities with filtering and searching.
- 🔲User Roles and Permissions 🔐: Role-based access control for managing applications.
- 🔲Integration with CI/CD 🔄: Seamless integration with CI/CD pipelines for automated deployments.
- 🔲Resource Monitoring 📈: Monitor resource usage (CPU, memory) for each application.
- 🔲Backup and Restore 💾: Automated backup and restore functionality for application data.
We welcome contributions from the community. If you have suggestions, bug reports, or feature requests, please open an issue or submit a pull request on our GitHub repository.
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
For any inquiries or support, please contact Soluify™.
If you find our work useful and would like to support us, feel free to make a donation using the addresses below:
- BTC (Bitcoin):
bc1qxjpfszwvy3ty33weu6tjkr394uq30jwkysp4x0
- ETH (Ethereum):
0xAF3ADE79B7304784049D200ea50352D1C717d7f2
Thank you for your support!
By using App Ally, you agree to the terms and conditions outlined by Soluify™. Happy managing!
GitHub Repository Structure
App-Ally/
├── app_ally.py
├── config.json
├── README.md
└── LICENSE
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
By following these instructions, you can easily set up and manage your self-hosted applications using App Ally. For more information and updates, visit our GitHub repository or contact us @ Soluify™.