websoft9/docs/PRD.md

99 lines
1.8 KiB
Markdown
Raw Normal View History

2023-03-20 16:37:04 +08:00
# 需求
从两个主线理解 StackHub 的需求:
* 应用生命周期管理:寻找、安装、发布、停止、卸载、升级等软件全生命周期。
* 基础设施运维管理:安全、存储、文件、容器、监控等系统管理
## 应用生命周期
### 业务需求
#### 寻找
一级分类+筛选+搜索的方式寻找已经模板化的应用
#### 安装
* 按顺序依次启动目标应用
* 启动应用之前先进行资源约束判断,不符合条件的目标应用
* 应用的状态有:待安装、安装中、安装失败、运行中/安装成功
#### 发布
以域名或端口的方式,将运行中的应用发布出去,供外部用户访问:
* 发布
* 停止发布
* 删除发布
#### 停止
将应用的服务停止
#### 卸载
卸载应用并删除数据
#### 升级
升级应用,如果升级失败会自动回滚到升级之前的状态
#### 恢复
在已有的完整备份的基础,恢复应用
#### 克隆
克隆一个已经存在的应用
### 技术需求
#### 模板编排
100% 以 Docker Compose 语法作为编排语言
#### 多语言
#### 用户管理
#### UI自适应
#### 2FA
#### 商店基础设置
#### 商店更新
#### API
#### CLI
#### 监控
#### 转发
#### 镜像仓库
默认以 DockerHub 作为镜像仓库,支持自建仓库并同步 DockerHub 镜像
#### 安装程序
一键自动化安装程序,类似:
```
curl https://websoft9.github.io/install.sh | bash
```
主要步骤包括:
2023-01-31 09:08:38 +08:00
1. Check硬件、操作系统、cpu架构
2. 安装依赖包
3. 安装docker
4. 下载各源码包
5. 启动个源码对应服务
2023-01-29 16:11:29 +08:00
2023-03-20 16:37:04 +08:00
## 基础设施运维
### SSH 终端
### 文件管理器
### 存储管理
### 容器管理
可视化的容器管理,包括:拉镜像、创建/删除/停止容器、SSH进入容器、向容器上传文件等
### DNS
2023-03-20 17:54:42 +08:00
### 系统监控