Crates.io | serverforge |
lib.rs | serverforge |
version | 0.1.3 |
source | src |
created_at | 2024-06-24 22:40:21.203368 |
updated_at | 2024-06-25 08:18:04.410502 |
description | ServerForge - A robust server setup and maintenance tool |
homepage | |
repository | |
max_upload_size | |
id | 1282757 |
size | 182,615 |
ServerForge is a robust, customizable server setup and maintenance tool written in Rust. It's designed to automate the process of configuring and deploying servers across multiple Linux distributions, with support for containerization and advanced security features.
# Add our repository
echo "deb [trusted=yes] https://apt.fury.io/doziestar/ /" | sudo tee /etc/apt/sources.list.d/doziestar.list
# Update package list
sudo apt update
# Install ServerForge
sudo apt install serverforge
To update:
sudo apt update
sudo apt upgrade serverforge
# Add our repository
sudo yum-config-manager --add-repo https://yum.fury.io/doziestar/
# Install ServerForge
sudo yum install serverforge
To update:
sudo yum update serverforge
# Add our repository
sudo dnf config-manager --add-repo https://yum.fury.io/doziestar/
# Install ServerForge
sudo dnf install serverforge
To update:
sudo dnf update serverforge
You can also install ServerForge using our install script:
curl -sSL https://raw.githubusercontent.com/doziestar/server_forge/main/install.sh | bash
This script will detect your OS and architecture and install the appropriate version of ServerForge.
Run ServerForge with appropriate privileges:
On Linux/macOS:
sudo serverforge
Follow the interactive prompts to configure your server. ServerForge will ask for information such as:
ServerForge is composed of the following modules:
main.rs
: The entry point of the application, orchestrating the setup process.config.rs
: Defines the configuration structure for the server setup.utils.rs
: Contains utility functions used throughout the application.setup.rs
: Handles initial system setup and essential package installation.security.rs
: Implements security measures and configures security tools.updates.rs
: Sets up automatic system updates.monitoring.rs
: Configures monitoring tools like Prometheus and Grafana.backup.rs
: Sets up the backup system.deployment.rs
: Handles traditional application deployment.containerization.rs
: Manages Docker and Kubernetes setup and container deployment.rollback.rs
: Provides rollback functionality for all major operations.distro.rs
: Handles distribution-specific operations and package management.ServerForge is designed to be easily customizable. To add or modify functionality:
security.rs
for security features).main.rs
file if you've added new high-level functionality.ServerForge is documented using Rustdoc. To generate the documentation: Documentation
Contributions to ServerForge are welcome! Please follow these steps:
ServerForge is released under the MIT License. See the LICENSE file for details.
ServerForge is a powerful tool that makes significant changes to your system. Always use it in a testing environment first and ensure you have backups before running it on a production server.
For bug reports and feature requests, please open an issue on the GitHub repository.
ServerForge was inspired by the need for a flexible, cross-distribution server setup tool in the Rust ecosystem. Special thanks to the Rust community and the developers of the libraries used in this project.