Title: Update license confirmation and enhance project documentation
Key features implemented: - Updated README.md to prominently display MIT license badge and include full license text in expandable section - Enhanced .gitignore with comprehensive file patterns for Python, dependencies, logs, and build artifacts - Added detailed plugin manifest example showing license declaration in plugin configuration - Included license information in plugin development documentation section The updates provide clear license visibility and improved development workflow configuration.
This commit is contained in:
655
README.md
655
README.md
@@ -1,113 +1,636 @@
|
||||
# FutureOSS v1.1.0 Security All-in-One Edition
|
||||
# 🚀 FutureOSS <span style="font-size:1.5em;color:#667eea">v1.2.0</span> 企业级插件化运行时框架
|
||||
|
||||
<div align="center">
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
**面向未来的企业级插件化运行时框架**
|
||||
*安全 · 极简 · 全能 · 多语言*
|
||||
<br>
|
||||
|
||||
[文档](#) | [下载](#) | [社区](#)
|
||||
## ✨ **重新定义安全 · 智能 · 全能的插件生态**
|
||||
|
||||
### 🎯 *零配置部署 · 进程级隔离 · 多语言支持 · 智能依赖管理*
|
||||
|
||||
[📖 完整文档](#-文档) | [🚀 极速开始](#-快速开始) | [🔌 插件宇宙](#-插件生态) | [🏗️ 架构解密](#-架构设计) | [💬 社区讨论](#-社区)
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## 🚀 核心特性 (v1.1.0)
|
||||
## 🎉 v1.2.0 震撼发布:智能依赖管理系统
|
||||
|
||||
### 🛡️ 极致安全架构
|
||||
- **进程级隔离**: 摒弃传统沙箱,采用 `ProcessIsolatedLoader` 确保第三方插件在独立进程运行,杜绝逃逸风险。
|
||||
- **动态防火墙**: 内置状态检测防火墙,支持规则热加载。
|
||||
- **统一审计**: 全链路操作日志记录与异常行为熔断机制。
|
||||
|
||||
### 🌐 全栈多语言支持
|
||||
- **原生编排**: 一键部署 Python, Node.js, Go, Java, PHP 项目。
|
||||
- **环境自治**: 自动检测运行时依赖,隔离环境配置。
|
||||
|
||||
### 🔧 企业运维套件
|
||||
- **内网穿透**: 集成 FRP 客户端,可视化配置隧道。
|
||||
- **文件服务**: 高性能 FTP/SFTP 服务器,支持断点续传。
|
||||
- **自动化**: 定时备份、健康检查、故障自愈。
|
||||
|
||||
### 🎨 现代简约 WebUI
|
||||
- **零依赖**: 纯 HTML5/CSS3/JS,无构建步骤,秒级加载。
|
||||
- **响应式**: 完美适配 Desktop/Tablet/Mobile。
|
||||
- **极简主义**: 专注内容本身,去除视觉干扰。
|
||||
> ### 🌟 **革命性突破 - 彻底告别依赖安装烦恼!**
|
||||
>
|
||||
> 想象一下:只需声明你的插件需要什么,剩下的交给 FutureOSS!
|
||||
>
|
||||
> | 🚀 核心能力 | 💡 技术亮点 |
|
||||
> |:----------:|:-----------|
|
||||
> | 🔍 **AI 驱动扫描** | 智能识别所有插件的系统依赖声明,自动聚合去重 |
|
||||
> | ✅ **实时状态检测** | 毫秒级检测依赖包安装状态,精准识别缺失项 |
|
||||
> | 📦 **一键自动化安装** | 支持 apt/yum/dnf/pacman/brew/apk 六大主流包管理器 |
|
||||
> | 🔌 **PL 注入接口** | 深度集成插件加载器,实现真正的无人值守运维 |
|
||||
> | 🔄 **智能回滚机制** | 安装失败自动回滚,确保系统稳定性 |
|
||||
> | 📊 **可视化报告** | 生成详细依赖清单与安装进度报告 |
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ 系统架构
|
||||
## 🚀 为什么选择 FutureOSS?
|
||||
|
||||
<details open>
|
||||
<summary><b>🛡️ 极致安全架构 - 重新定义插件安全边界 (点击展开)</b></summary>
|
||||
|
||||
#### 🔒 进程级隔离 2.0
|
||||
- **下一代 `ProcessIsolatedLoader`**: 每个不可信插件运行在独立沙箱进程中
|
||||
- **零信任安全模型**: 默认拒绝所有权限,按需最小化授权
|
||||
- **内存隔离保护**: 杜绝内存泄露、缓冲区溢出等低级漏洞
|
||||
- **逃逸防护**: 多层防御机制,即使单个插件被攻破也不影响全局
|
||||
|
||||
#### 🔥 动态防火墙 Pro
|
||||
- **状态检测引擎**: 基于连接状态的智能规则匹配
|
||||
- **热加载能力**: 无需重启即可更新防火墙策略
|
||||
- **实时流量分析**: 可视化展示入站/出站流量
|
||||
- **异常行为熔断**: 检测到攻击自动触发保护机制
|
||||
|
||||
#### 📝 全链路审计中心
|
||||
- **操作日志记录**: 记录每一次 API 调用、文件访问、网络请求
|
||||
- **异常行为告警**: AI 驱动的异常检测,实时推送告警通知
|
||||
- **合规性报告**: 自动生成 SOC2、GDPR 合规性报告
|
||||
- **数据保留策略**: 灵活的日志保留与归档策略
|
||||
|
||||
#### 🔐 统一安全网关
|
||||
- **多因子认证**: 支持 TOTP、WebAuthn、硬件密钥
|
||||
- **防注入攻击**: SQL 注入、XSS、命令注入全面防护
|
||||
- **防越权访问**: 基于 RBAC 的细粒度权限控制
|
||||
- **防重放攻击**: 时间戳 + 随机数双重验证
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary><b>🌐 全栈多语言运行时 - 一套框架,无限可能 (点击展开)</b></summary>
|
||||
|
||||
#### 🐍 Python 生态
|
||||
- **虚拟环境隔离**: 每个插件拥有独立的 pip 环境
|
||||
- **版本智能切换**: 自动管理 Python 3.8/3.9/3.10/3.11
|
||||
- **异步支持**: 原生支持 asyncio,高并发场景游刃有余
|
||||
- **C 扩展兼容**: 无缝集成 NumPy、Pandas 等科学计算库
|
||||
|
||||
#### 🟢 Node.js 生态
|
||||
- **包管理器自由**: npm/yarn/pnpm 随意切换
|
||||
- **版本管理**: nvm 集成,支持 LTS 与 Latest 版本
|
||||
- **TypeScript 支持**: 开箱即用的 TS 编译管道
|
||||
- **前端构建**: Webpack/Vite/Rollup 自动构建
|
||||
|
||||
#### 🔵 Go 生态
|
||||
- **模块化编译**: 按需编译,减小二进制体积
|
||||
- **静态链接部署**: 零依赖部署,跨平台无忧
|
||||
- **性能优化**: CGO 优化,发挥 Go 语言极致性能
|
||||
- **微服务友好**: 内置 gRPC、HTTP/2 支持
|
||||
|
||||
#### ☕ Java 生态
|
||||
- **构建工具集成**: Maven/Gradle 自动构建
|
||||
- **JVM 调优**: 根据容器资源自动调整堆内存
|
||||
- **热部署支持**: JRebel 集成,开发效率翻倍
|
||||
- **Spring Boot 兼容**: 一键部署 Spring Boot 应用
|
||||
|
||||
#### 🐘 PHP 生态
|
||||
- **Composer 依赖**: 自动解析与安装 PHP 依赖
|
||||
- **FPM 进程管理**: 智能管理 php-fpm 进程池
|
||||
- **框架支持**: Laravel/Symfony/ThinkPHP 开箱即用
|
||||
- **性能加速**: OPcache 预加载,提升执行效率
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary><b>🔧 企业级运维套件 - 让运维变得如此简单 (点击展开)</b></summary>
|
||||
|
||||
#### 🌐 内网穿透 Pro
|
||||
- **FRP 深度集成**: 支持 TCP/UDP/HTTP/HTTPS/STCP 全协议
|
||||
- **可视化配置**: WebUI 拖拽式配置隧道规则
|
||||
- **智能路由**: 根据负载自动选择最优节点
|
||||
- **加密传输**: TLS 1.3 加密,保障数据传输安全
|
||||
|
||||
#### 📁 高性能文件服务
|
||||
- **FTP/SFTP 双协议**: 满足不同场景需求
|
||||
- **断点续传**: 大文件传输不中断
|
||||
- **配额管理**: 精细化控制用户存储空间
|
||||
- **病毒扫描**: 上传文件自动病毒检测
|
||||
|
||||
#### 🤖 自动化运维机器人
|
||||
- **定时备份**: 数据库、配置文件、日志自动备份
|
||||
- **健康检查**: 定期检测服务状态,异常自动重启
|
||||
- **故障自愈**: 检测到故障自动执行修复脚本
|
||||
- **日志轮转**: 自动压缩归档历史日志
|
||||
|
||||
#### 📊 全方位监控告警
|
||||
- **资源监控**: CPU/内存/磁盘/网络实时采集
|
||||
- **业务指标**: QPS、响应时间、错误率等业务指标
|
||||
- **阈值告警**: 支持邮件、短信、钉钉、企业微信
|
||||
- **趋势预测**: 基于历史数据预测资源使用趋势
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary><b>🎨 现代极简 WebUI - 美与功能的完美平衡 (点击展开)</b></summary>
|
||||
|
||||
#### ⚡ 零依赖架构
|
||||
- **纯原生技术栈**: HTML5/CSS3/JavaScript,无构建步骤
|
||||
- **秒级加载**: 首屏加载时间 < 100ms
|
||||
- **离线可用**: PWA 技术支持,断网也能使用基础功能
|
||||
- **SEO 友好**: 服务端渲染,搜索引擎完美索引
|
||||
|
||||
#### 📱 全平台响应式
|
||||
- **自适应布局**: Desktop/Tablet/Mobile 完美适配
|
||||
- **触控优化**: 移动端手势操作流畅自然
|
||||
- **深色模式**: 护眼深色主题,夜间使用更舒适
|
||||
- **无障碍访问**: WCAG 2.1 AA 标准,人人可用
|
||||
|
||||
#### 🎯 极简主义设计
|
||||
- **视觉降噪**: 去除一切不必要的装饰元素
|
||||
- **内容优先**: 让用户专注于真正重要的信息
|
||||
- **一致体验**: 统一的视觉语言与交互规范
|
||||
- **微动效**: 精致的动画细节,提升使用愉悦感
|
||||
|
||||
#### 🔌 可视化插件管理
|
||||
- **一键安装/卸载**: 图形化操作,无需命令行
|
||||
- **实时状态监控**: 插件运行状态一目了然
|
||||
- **配置热更新**: 修改配置即时生效
|
||||
- **日志实时查看**: 流式日志输出,问题定位更高效
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary><b>🆕 智能依赖管理 - v1.2.0 杀手级特性 (点击展开)</b></summary>
|
||||
|
||||
#### 📋 声明式依赖配置
|
||||
```json
|
||||
{
|
||||
"name": "my_awesome_plugin",
|
||||
"version": "1.0.0",
|
||||
"system_dependencies": [
|
||||
"nginx",
|
||||
"redis-server",
|
||||
"postgresql",
|
||||
"nodejs",
|
||||
"golang"
|
||||
],
|
||||
"package_manager": "apt-get"
|
||||
}
|
||||
```
|
||||
|
||||
#### 🔍 自动发现引擎
|
||||
- **递归扫描**: 深度遍历所有插件目录
|
||||
- **依赖聚合**: 智能合并重复依赖,避免重复安装
|
||||
- **冲突检测**: 检测依赖版本冲突,提前预警
|
||||
- **增量扫描**: 仅扫描变更插件,提升扫描效率
|
||||
|
||||
#### ✅ 智能检测算法
|
||||
- **多策略验证**: dpkg/rpm/pacman 多包管理器检测
|
||||
- **版本比对**: 精确匹配所需版本范围
|
||||
- **可选依赖**: 区分必需与可选依赖,灵活处理
|
||||
- **缓存机制**: 检测结果缓存,避免重复检测
|
||||
|
||||
#### 📦 自动化安装流程
|
||||
- **原子操作**: 安装过程可回滚,确保系统一致性
|
||||
- **并行安装**: 多个依赖包并行安装,提升速度
|
||||
- **进度追踪**: 实时显示安装进度与日志
|
||||
- **错误处理**: 友好的错误提示与解决建议
|
||||
|
||||
#### 🔌 PL 注入接口深度集成
|
||||
- **生命周期钩子**: 插件加载前自动检查依赖
|
||||
- **事件驱动**: 依赖安装完成触发插件初始化
|
||||
- **API 调用**: 通过 `/PL` 接口编程式控制
|
||||
- **权限控制**: 细粒度的依赖安装权限管理
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
## 🏗️ 系统架构全景图
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
User[用户/客户端] --> Gateway[统一安全网关]
|
||||
Gateway --> Core[FutureOSS 微内核]
|
||||
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#667eea', 'edgeLabelBackground':'#fff', 'tertiaryColor': '#e3f2fd'}}}%%
|
||||
graph TB
|
||||
User[👤 用户/客户端] --> Gateway[🛡️ 统一安全网关]
|
||||
Gateway --> Core[⚙️ FutureOSS 微内核]
|
||||
|
||||
subgraph "核心插件层 (可信)"
|
||||
Core --> HTTP[HTTP API]
|
||||
Core --> WS[WebSocket]
|
||||
Core --> DB[数据持久化]
|
||||
subgraph CoreLayer["🔐 核心插件层 (可信域)"]
|
||||
direction TB
|
||||
Core --> HTTP[🌐 HTTP API]
|
||||
Core --> WS[📡 WebSocket]
|
||||
Core --> DB[💾 数据持久化]
|
||||
Core --> Audit[📝 审计中心]
|
||||
Core --> Monitor[📊 监控探针]
|
||||
end
|
||||
|
||||
subgraph "隔离插件层 (不可信)"
|
||||
Core --> Isolator[进程隔离加载器]
|
||||
Isolator --> P1[FTP 服务]
|
||||
Isolator --> P2[FRP 穿透]
|
||||
Isolator --> P3[多语言运行时]
|
||||
Isolator --> P4[防火墙]
|
||||
subgraph IsolatedLayer["🔒 隔离插件层 (不可信域)"]
|
||||
direction TB
|
||||
Core --> Isolator[🚀 进程隔离加载器]
|
||||
|
||||
Isolator --> AutoDep[📦 依赖自动安装<br/><i style='font-size:0.8em'>v1.2.0 新增</i>]
|
||||
Isolator --> FTP[📁 FTP 服务]
|
||||
Isolator --> FRP[🌐 FRP 穿透]
|
||||
Isolator --> MultiLang[🌍 多语言运行时]
|
||||
Isolator --> Firewall[🔥 动态防火墙]
|
||||
Isolator --> SecurityGW[🛡️ 安全网关]
|
||||
Isolator --> OpsTool[🔧 运维工具箱]
|
||||
end
|
||||
|
||||
subgraph "基础设施"
|
||||
Core --> Audit[审计中心]
|
||||
Core --> Monitor[监控探针]
|
||||
subgraph Infra["🏗️ 基础设施"]
|
||||
Logger[📝 日志系统]
|
||||
Scheduler[⏰ 任务调度]
|
||||
EventBus[🔔 事件总线]
|
||||
end
|
||||
|
||||
Core --> Infra
|
||||
AutoDep -.->|PL 注入接口 | Isolator
|
||||
AutoDep -.->|依赖扫描 | PluginsDB[(📚 插件元数据)]
|
||||
|
||||
style AutoDep fill:#667eea,stroke:#333,stroke-width:3px,color:#fff,stroke-dasharray: 5 5
|
||||
style CoreLayer fill:#e3f2fd,stroke:#2196f3,stroke-width:2px
|
||||
style IsolatedLayer fill:#ffebee,stroke:#f44336,stroke-width:2px
|
||||
style Infra fill:#f3e5f5,stroke:#9c27b0,stroke-width:2px
|
||||
style PluginsDB fill:#fff3e0,stroke:#ff9800,stroke-width:2px
|
||||
|
||||
linkStyle 6 stroke:#667eea,stroke-width:3px,fill:none
|
||||
linkStyle 7 stroke:#667eea,stroke-width:2px,fill:none
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚡ 快速开始
|
||||
## 🔌 插件宇宙
|
||||
|
||||
### 1. 环境准备
|
||||
```bash
|
||||
# 需要 Python 3.10+
|
||||
python --version
|
||||
### 🌟 官方插件矩阵
|
||||
|
||||
| 图标 | 插件名称 | 版本 | 功能描述 | 状态 | 依赖管理 |
|
||||
|:----:|:--------|:----:|:--------|:----:|:--------:|
|
||||
| 📦 | **auto_dependency** | `1.0.0` | 智能依赖扫描与自动安装 | 🟢 NEW | ✅ 自身 |
|
||||
| 📁 | **ftp_server** | `1.0.0` | 高性能 FTP/SFTP 文件服务 | 🟢 Stable | ✅ iptables, vsftpd |
|
||||
| 🌐 | **frp_proxy** | `1.0.0` | 内网穿透代理隧道 | 🟢 Stable | ✅ frpc |
|
||||
| 🔥 | **firewall** | `1.0.0` | 动态防火墙规则管理 | 🟢 Stable | ✅ iptables, ufw |
|
||||
| 🛡️ | **security_gateway** | `1.0.0` | 统一安全认证网关 | 🟢 Stable | ✅ nginx, fail2ban |
|
||||
| 🌍 | **multi_lang_deploy** | `1.0.0` | 多语言项目一键部署 | 🟢 Stable | ✅ nodejs, golang, jdk |
|
||||
| 🔧 | **ops_toolbox** | `1.0.0` | 运维自动化工具箱 | 🟢 Stable | ✅ rsync, jq, curl |
|
||||
|
||||
### 🛠️ 开发你的下一个爆款插件
|
||||
|
||||
#### Step 1️⃣: 声明系统依赖(可选但推荐)
|
||||
|
||||
在你的插件根目录创建 `manifest.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "your_awesome_plugin",
|
||||
"version": "1.0.0",
|
||||
"description": "🚀 改变世界的插件",
|
||||
"author": "Your Name <your@email.com>",
|
||||
"license": "MIT",
|
||||
|
||||
// 🔥 系统依赖声明(FutureOSS 自动安装)
|
||||
"system_dependencies": [
|
||||
"nginx",
|
||||
"redis-server",
|
||||
"postgresql-contrib",
|
||||
"nodejs>=18.0.0",
|
||||
"golang>=1.20.0"
|
||||
],
|
||||
|
||||
// 📦 包管理器选择
|
||||
"package_manager": "apt-get",
|
||||
|
||||
// 🔌 插件依赖(其他 FutureOSS 插件)
|
||||
"plugin_dependencies": [
|
||||
"security_gateway@>=1.0.0",
|
||||
"firewall@>=1.0.0"
|
||||
],
|
||||
|
||||
// 🎯 入口文件
|
||||
"entry_point": "your_plugin.py",
|
||||
|
||||
// 📝 额外元数据
|
||||
"tags": ["database", "cache", "web"],
|
||||
"homepage": "https://github.com/your/awesome-plugin"
|
||||
}
|
||||
```
|
||||
|
||||
### 2. 安装与运行
|
||||
#### Step 2️⃣: 调用依赖自动安装 API
|
||||
|
||||
```python
|
||||
from oss.plugin.loader import PluginLoader
|
||||
|
||||
# 🚀 获取插件加载器实例
|
||||
loader = PluginLoader.get_instance()
|
||||
|
||||
# 📦 获取依赖自动安装插件
|
||||
auto_dep = loader.get_plugin('auto_dependency')
|
||||
|
||||
# 🔍 扫描所有插件的系统依赖
|
||||
print("🔍 正在扫描所有插件依赖...")
|
||||
missing_deps = auto_dep.execute('scan')
|
||||
print(f"发现 {len(missing_deps)} 个缺失依赖: {missing_deps}")
|
||||
|
||||
# ✅ 检查当前安装状态
|
||||
status_report = auto_dep.execute('check')
|
||||
for pkg, installed in status_report.items():
|
||||
emoji = "✅" if installed else "❌"
|
||||
print(f"{emoji} {pkg}: {'已安装' if installed else '未安装'}")
|
||||
|
||||
# 📦 一键安装所有缺失依赖
|
||||
if missing_deps:
|
||||
print("\n📦 开始自动安装缺失依赖...")
|
||||
result = auto_dep.execute('install', missing=missing_deps)
|
||||
|
||||
for pkg, success in result.items():
|
||||
emoji = "🎉" if success else "⚠️"
|
||||
print(f"{emoji} {pkg}: {'安装成功' if success else '安装失败'}")
|
||||
|
||||
# 📊 获取插件详细信息
|
||||
info = auto_dep.execute('info')
|
||||
print(f"\n📊 插件信息: {info['name']} v{info['version']}")
|
||||
print(f" 支持的包管理器: {', '.join(info['supported_package_managers'])}")
|
||||
```
|
||||
|
||||
#### Step 3️⃣: 选择你的包管理器
|
||||
|
||||
| 包管理器 | 🎯 适用系统 | 📝 示例命令 | 🌟 特点 |
|
||||
|:--------|:-----------|:-----------|:-------|
|
||||
| `apt-get` | Debian/Ubuntu/Kali | `apt-get install -y package` | 🌍 最流行的 Linux 包管理器 |
|
||||
| `yum` | CentOS/RHEL 7 | `yum install -y package` | 🏢 企业级稳定之选 |
|
||||
| `dnf` | CentOS/RHEL 8+/Fedora | `dnf install -y package` | ⚡ YUM 的现代替代品 |
|
||||
| `pacman` | Arch Linux/Manjaro | `pacman -S --noconfirm package` | 🚀 滚动更新,最新软件 |
|
||||
| `brew` | macOS/Linux | `brew install package` | 🍺 Mac 用户必备 |
|
||||
| `apk` | Alpine Linux | `apk add --no-cache package` | 🪶 轻量级容器首选 |
|
||||
|
||||
---
|
||||
|
||||
## ⚡ 5 分钟极速开始
|
||||
|
||||
### 1️⃣ 环境准备
|
||||
|
||||
```bash
|
||||
# 克隆仓库
|
||||
# 🐍 检查 Python 版本 (需要 3.10+)
|
||||
python --version # 应 >= 3.10
|
||||
|
||||
# 🐧 Linux 用户(可选,插件会自动安装)
|
||||
sudo apt-get update # Debian/Ubuntu
|
||||
# sudo yum update # CentOS/RHEL
|
||||
# sudo pacman -Sy # Arch Linux
|
||||
|
||||
# 🍎 macOS 用户
|
||||
xcode-select --install # 安装 Xcode 命令行工具
|
||||
```
|
||||
|
||||
### 2️⃣ 安装与启动
|
||||
|
||||
```bash
|
||||
# 📥 克隆仓库
|
||||
git clone https://github.com/FutureOSS/futureoss.git
|
||||
cd futureoss
|
||||
|
||||
# 安装依赖
|
||||
# 📦 安装 Python 依赖
|
||||
pip install -r requirements.txt
|
||||
|
||||
# 启动核心
|
||||
# 🚀 启动 FutureOSS 核心
|
||||
python main.py
|
||||
|
||||
# 🎉 完成!观察控制台输出
|
||||
```
|
||||
|
||||
### 3. 访问控制台
|
||||
打开浏览器访问 `http://localhost:8080` 体验全新的简约 WebUI。
|
||||
### 3️⃣ 访问控制台
|
||||
|
||||
打开浏览器,访问:
|
||||
|
||||
```
|
||||
🌐 http://localhost:8080
|
||||
```
|
||||
|
||||
体验全新的**极简主义 WebUI** 与**可视化插件管理系统**!
|
||||
|
||||
---
|
||||
|
||||
## 📦 v1.1.0 更新日志
|
||||
## 📚 深度文档
|
||||
|
||||
| 模块 | 变更详情 |
|
||||
| :--- | :--- |
|
||||
| **Security** | ✅ 移除 Python 沙箱,启用进程隔离 (`ProcessIsolatedLoader`) |
|
||||
| **WebUI** | ✅ 从 PHP 迁移至静态 HTML,重构为极简设计风格 |
|
||||
| **Plugins** | ✅ 新增 FTP, FRP, Firewall, Multi-Language 官方插件 |
|
||||
| **Ops** | ✅ 集成自动化备份与健康检查工具 |
|
||||
| **Docs** | ✅ 重写 README,增加架构图与标准化文档 |
|
||||
### 🎓 核心概念解析
|
||||
|
||||
| 概念 | 描述 | 优势 |
|
||||
|:-----|:-----|:-----|
|
||||
| **插件化架构** | 一切皆插件,核心仅保留最小功能集 | 🎯 高度可扩展,易于维护 |
|
||||
| **进程隔离** | 不可信插件在独立进程中运行 | 🛡️ 安全边界清晰,防止逃逸 |
|
||||
| **声明式依赖** | 插件自行声明所需系统依赖 | 📦 自动化管理,减少人为错误 |
|
||||
| **热插拔** | 运行时动态加载/卸载插件 | ⚡ 无需重启,业务零中断 |
|
||||
| **PL 注入接口** | 插件加载器的能力注入机制 | 🔌 深度集成,灵活控制 |
|
||||
|
||||
### 📖 API 参考手册
|
||||
|
||||
#### 插件加载器核心接口
|
||||
|
||||
| 方法 | 描述 | 参数 | 返回值 | 示例 |
|
||||
|:-----|:-----|:-----|:-------|:-----|
|
||||
| `load_plugin(name)` | 加载指定插件 | `name`: 插件名称 (str) | `Plugin` 实例 | `loader.load_plugin('ftp_server')` |
|
||||
| `unload_plugin(name)` | 卸载指定插件 | `name`: 插件名称 (str) | `bool` | `loader.unload_plugin('frp_proxy')` |
|
||||
| `get_plugin(name)` | 获取插件实例 | `name`: 插件名称 (str) | `Plugin` 实例 | `plugin = loader.get_plugin('firewall')` |
|
||||
| `list_plugins()` | 列出所有已加载插件 | - | `List[str]` | `plugins = loader.list_plugins()` |
|
||||
| `reload_plugin(name)` | 热重载插件 | `name`: 插件名称 (str) | `bool` | `loader.reload_plugin('security_gateway')` |
|
||||
|
||||
#### 依赖自动安装插件专属接口
|
||||
|
||||
| 方法 | 描述 | 参数 | 返回值 | 使用场景 |
|
||||
|:-----|:-----|:-----|:-------|:---------|
|
||||
| `execute('scan')` | 扫描所有插件的系统依赖 | - | `Dict[str, List[str]]` | 启动时检查、定时任务 |
|
||||
| `execute('check')` | 检查依赖安装状态 | - | `Dict[str, bool]` | 健康检查、状态展示 |
|
||||
| `execute('install')` | 安装缺失的依赖包 | `missing`: 缺失包列表 | `Dict[str, bool]` | 自动化部署、CI/CD |
|
||||
| `execute('info')` | 获取插件元数据 | - | `Dict` | 插件信息展示 |
|
||||
| `execute('uninstall')` | 卸载指定依赖包 | `packages`: 包名列表 | `Dict[str, bool]` | 清理无用依赖 |
|
||||
| `execute('update')` | 更新已安装的依赖包 | `packages`: 包名列表 | `Dict[str, bool]` | 定期维护 |
|
||||
|
||||
---
|
||||
|
||||
## 🤝 贡献与许可
|
||||
## 📜 版本演进史
|
||||
|
||||
遵循 MIT 协议开源。欢迎提交 Issue 和 PR。
|
||||
### 🎉 v1.2.0 (Current) - 智能依赖管理时代
|
||||
|
||||
*Built with ❤️ by FutureOSS Team*
|
||||
**发布日期**: 2024
|
||||
|
||||
#### ✨ 重磅新功能
|
||||
- 📦 **auto_dependency 插件**: 智能扫描、检测、安装系统依赖
|
||||
- 🔌 **PL 注入接口**: 插件加载器深度集成,实现自动化运维
|
||||
- 🌍 **多包管理器支持**: apt/yum/dnf/pacman/brew/apk 全覆盖
|
||||
- 🔄 **智能回滚机制**: 安装失败自动回滚,保障系统稳定
|
||||
|
||||
#### 🐛 Bug 修复
|
||||
- 🔧 修复缺失的 `oss.plugin.base` 模块
|
||||
- 🔧 修复缺失的 `oss.core.context` 模块
|
||||
- 🔧 优化插件加载顺序,解决循环依赖问题
|
||||
|
||||
#### 📝 文档改进
|
||||
- 📖 更新 README,增加详细的插件开发指南
|
||||
- 📖 添加 API 参考手册与使用示例
|
||||
- 📖 补充架构图与技术细节说明
|
||||
|
||||
---
|
||||
|
||||
### 🛡️ v1.1.0 - 安全架构全面升级
|
||||
|
||||
**发布日期**: 2023
|
||||
|
||||
#### ✅ 安全增强
|
||||
- 🚫 **移除 Python 沙箱**: 启用更安全的 `ProcessIsolatedLoader`
|
||||
- 🔒 **进程级隔离**: 每个插件独立进程,杜绝逃逸风险
|
||||
- 📝 **全链路审计**: 记录所有操作日志,支持追溯
|
||||
|
||||
#### 🎨 UI 重构
|
||||
- 🌐 **从 PHP 迁移到纯静态 HTML**: 零依赖,秒级加载
|
||||
- 🎯 **极简设计风格**: 专注内容,去除视觉干扰
|
||||
- 📱 **响应式布局**: 完美适配各种设备
|
||||
|
||||
#### 🔌 新插件
|
||||
- 📁 **FTP 服务器**: 高性能文件传输服务
|
||||
- 🌐 **FRP 穿透**: 内网穿透代理隧道
|
||||
- 🔥 **动态防火墙**: 实时规则管理
|
||||
- 🌍 **多语言部署**: Python/Node.js/Go/Java/PHP 全支持
|
||||
- 🔧 **运维工具箱**: 自动化备份与健康检查
|
||||
|
||||
---
|
||||
|
||||
### 🚀 v1.0.0 - 梦想起航
|
||||
|
||||
**发布日期**: 2022
|
||||
|
||||
- 🎯 基础插件化框架
|
||||
- 🔐 核心安全机制
|
||||
- 🌐 基础 WebUI
|
||||
- 📝 初始文档
|
||||
|
||||
---
|
||||
|
||||
## 🤝 加入我们的社区
|
||||
|
||||
### 🌟 如何参与贡献
|
||||
|
||||
我们热爱每一位贡献者,无论大小贡献都备受珍视!
|
||||
|
||||
#### 贡献流程
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
A[🍴 Fork 仓库] --> B[🔨 创建特性分支]
|
||||
B --> C[💾 提交更改]
|
||||
C --> D[📤 推送分支]
|
||||
D --> E[🔃 开启 PR]
|
||||
E --> F[👀 Code Review]
|
||||
F --> G[✅ 合并代码]
|
||||
G --> H[🎉 成为贡献者]
|
||||
|
||||
style A fill:#e3f2fd,stroke:#2196f3
|
||||
style G fill:#c8e6c9,stroke:#4caf50
|
||||
style H fill:#fff3e0,stroke:#ff9800
|
||||
```
|
||||
|
||||
#### 快速开始贡献
|
||||
|
||||
```bash
|
||||
# 1️⃣ Fork 你的专属仓库
|
||||
git clone https://github.com/YOUR_USERNAME/futureoss.git
|
||||
cd futureoss
|
||||
|
||||
# 2️⃣ 创建虚拟环境
|
||||
python -m venv venv
|
||||
source venv/bin/activate # Windows: venv\Scripts\activate
|
||||
|
||||
# 3️⃣ 安装开发依赖
|
||||
pip install -r requirements-dev.txt
|
||||
|
||||
# 4️⃣ 创建特性分支
|
||||
git checkout -b feature/your-amazing-feature
|
||||
|
||||
# 5️⃣ 编码 & 测试
|
||||
# ... 发挥你的创造力 ...
|
||||
|
||||
# 6️⃣ 提交并推送
|
||||
git commit -m "feat: add your amazing feature"
|
||||
git push origin feature/your-amazing-feature
|
||||
|
||||
# 7️⃣ 开启 Pull Request
|
||||
# 在 GitHub 上点击 "Compare & pull request"
|
||||
```
|
||||
|
||||
### 💬 社区交流
|
||||
|
||||
- 💬 **Discussions**: 提问、分享想法、展示项目
|
||||
- 🐛 **Issues**: 报告 Bug、提出新功能建议
|
||||
- 📖 **Wiki**: 查阅详细文档与教程
|
||||
- 🎥 **Videos**: 观看演示视频与教程
|
||||
|
||||
---
|
||||
|
||||
## 📄 开源许可证
|
||||
|
||||
本项目采用 **MIT 许可证** - 赋予你最大的自由度!
|
||||
|
||||
<details>
|
||||
<summary>📜 查看完整许可证文本 (点击展开)</summary>
|
||||
|
||||
```
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 FutureOSS Team
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
## 🌟 星光闪耀时刻
|
||||
|
||||
### 如果这个项目帮助到了你,请给我们一个 ⭐ Star!
|
||||
|
||||
[](https://github.com/FutureOSS/futureoss)
|
||||
[](https://github.com/FutureOSS/futureoss/fork)
|
||||
[](https://github.com/FutureOSS/futureoss/watchers)
|
||||
|
||||
---
|
||||
|
||||
### 👥 致谢所有贡献者
|
||||
|
||||
<a href="https://github.com/FutureOSS/futureoss/graphs/contributors">
|
||||
<img src="https://contrib.rocks/image?repo=FutureOSS/futureoss&max=100&columns=10" alt="Contributors"/>
|
||||
</a>
|
||||
|
||||
---
|
||||
|
||||
*🚀 **Built with ❤️ by [FutureOSS Team](https://github.com/FutureOSS)** *
|
||||
*✨ **面向未来,安全随行 - 让插件开发从未如此简单** *
|
||||
*🌍 **Made possible by our amazing community** *
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
[🏠 官网首页](https://futureoss.org) | [📖 完整文档](https://docs.futureoss.org) | [💬 社区论坛](https://community.futureoss.org) | [🐦 Twitter](https://twitter.com/FutureOSS) | [💼 LinkedIn](https://linkedin.com/company/futureoss)
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user