4 个版本
0.1.3 | 2024年6月25日 |
---|---|
0.1.2 | 2024年6月25日 |
0.1.1 | 2024年6月24日 |
0.1.0 | 2024年6月24日 |
#763 in 开发工具
95KB
1.5K SLoC
ServerForge
ServerForge 是一款由 Rust 编写的强大、可定制的服务器配置和维护工具。它旨在自动化跨多个 Linux 发行版配置和部署服务器的过程,支持容器化和高级安全功能。
功能
- 多发行版支持(Ubuntu、CentOS、Fedora)
- 模块化架构,易于定制和扩展
- 支持容器化,包括 Docker 和 Kubernetes 选项
- 实施高级安全措施
- 自动系统更新配置
- 使用 Prometheus 和 Grafana 进行监控设置
- 备份系统配置
- 应用部署(传统和容器化)
- 所有主要操作均支持回滚功能
先决条件
- 目标系统上的 root 权限(适用于 Linux 和 macOS)
- 管理员权限(适用于 Windows)
安装
Linux
Ubuntu/Debian
# 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
更新
sudo apt update
sudo apt upgrade serverforge
CentOS/RHEL
# Add our repository
sudo yum-config-manager --add-repo https://yum.fury.io/doziestar/
# Install ServerForge
sudo yum install serverforge
更新
sudo yum update serverforge
Fedora
# Add our repository
sudo dnf config-manager --add-repo https://yum.fury.io/doziestar/
# Install ServerForge
sudo dnf install serverforge
更新
sudo dnf update serverforge
手动安装(所有平台)
您也可以使用我们的安装脚本安装 ServerForge
curl -sSL https://raw.githubusercontent.com/doziestar/server_forge/main/install.sh | bash
此脚本将检测您的操作系统和架构,并安装合适的 ServerForge 版本。
用法
以适当的权限运行 ServerForge
在 Linux/macOS 上
sudo serverforge
按照交互式提示配置您的服务器。ServerForge 将要求您提供如下信息:
- Linux 发行版(适用于 Linux 安装)
- 服务器角色
- 安全级别
- 监控偏好
- 备份频率
- 更新计划
- 容器化偏好
- 要部署的应用程序
模块
ServerForge 由以下模块组成
main.rs
: 应用程序的入口点,负责设置流程。config.rs
: 定义服务器设置的配置结构。utils.rs
: 包含应用程序中使用的实用函数。setup.rs
: 处理初始系统设置和基本软件包安装。security.rs
: 实施安全措施并配置安全工具。updates.rs
: 设置自动系统更新。monitoring.rs
: 配置监控工具,如 Prometheus 和 Grafana。backup.rs
: 设置备份系统。deployment.rs
:处理传统应用部署。containerization.rs
:管理Docker和Kubernetes设置及容器部署。rollback.rs
:为所有主要操作提供回滚功能。distro.rs
:处理特定发行版的操作和包管理。
定制化
ServerForge设计为易于定制。要添加或修改功能
- 找到相关模块文件(例如,用于安全功能的
security.rs
)。 - 根据需要添加或修改函数。
- 如果添加了新的高级功能,请更新
main.rs
文件。
文档
ServerForge使用Rustdoc进行文档编写。要生成文档:[文档](https://crates.io/crates/serverforge)
贡献
欢迎为ServerForge做出贡献!请按照以下步骤操作
- 复制仓库。
- 为您的功能或错误修复创建一个新分支。
- 编写您的代码和测试。
- 提交一个带有对您的更改的清晰描述的pull request。
许可
ServerForge在MIT许可下发布。有关详细信息,请参阅LICENSE文件。
免责声明
ServerForge是一个强大的工具,可以对您的系统进行重大更改。请首先在测试环境中使用它,并在将其部署到生产服务器之前确保您有备份。
支持
对于错误报告和功能请求,请在该GitHub仓库中打开一个问题。
致谢
ServerForge受到在Rust生态系统中对灵活、跨发行版服务器设置工具需求的启发。特别感谢Rust社区和在此项目中使用的库的开发者。
依赖
~6–15MB
~211K SLoC