update doc

This commit is contained in:
qiaofeng1227 2023-06-14 12:01:40 +08:00
parent 0015b03769
commit 2323bc2513

View file

@ -10,17 +10,79 @@
发布镜像到 Dockhub 的 websoft9dev 组织下,通过自动化[Github Action](https://github.com/Websoft9/StackHub/blob/main/.github/workflows/appmanage_docker.yml)实现。
## Release
## 版本管理
### 版本管理
### 命名规则
StackHub 的 release 的版本号由项目主版本号和各微服务和插件版本号构成,详见[版本管理文件](https://github.com/Websoft9/StackHub/blob/main/install/version.json)
[major:大版本].[minor:功能版本].[patch:Bug 修复版本]
### 成果物
- major 主版本号,软件架构或软件界面发生重大变化。
- minor 次版本号,软件功能新增或删减。
- patch 错误修复版本号,软件缺陷修复。
> 版本通过 release 发布时指定,主版本号小于 1 时为预发布(pre-release)
1. 代码包本身
2. CHANGELOG 文件,来记录每次变更的具体内容
Release 目前手动进行,将合并 appmanage 和 cockpit 插件的 CHANGELOG
### 软件内部组件版本
StackHub 的 release 的版本号由项目主版本号和各微服务和插件版本号构成说明:
```
{
"SERVICES": {
"PORTAINER": "2.18.3", // portainer 版本号即对应docker镜像的版本号
"NGINX": "2.10.3", // nginxproxymanager 版本号即对应docker镜像的版本号
"APPMANAGE": "0.3.0", // app管理后台 版本号即对应docker镜像的版本号
"REDIS": "7.0.11" // app管理后台 版本号即对应docker镜像的版本号
},
"PLUGINS": {
"PORTAINER": "1.0.0", // cockpit插件 PORTAINER 版本号
"NGINX": "1.0.0", // cockpit插件 nginx 版本号
"MYAPPS": "1.0.1", // cockpit插件 myapps 版本号
"APPSTORE": "1.0.0" // cockpit插件 myapps 版本号
},
"LIBRARY": {
"VERSION": "1.0.0" // app项目应用库 docker-library 版本号
},
"VERSION": "0.3.0" // StackHub项目版本号上面所有组件的更新都会引起其版本更新
}
```
### 版本更新内容
通过项目下 CHANGELOG.md 来进行管理,格式如下:
```
## 0.3.0 release on 2023-06-06
1. appmanage docker 镜像更新到 0.3.0
2. 修复 prestashop 无法访问的 bug
3. 修复 odoo 无法安装的 bug
support min_version: 0.1.0
```
## 升级
升级主要分成软件商店升级和内核升级。
### 软件商店升级
主要是软件商店支持的 app 应用发生变化后引起的升级。
当 docker-library 项目发布新的 release 版本后,升级软件商店 app 源码以及 app 对应图片和元数据
> 先发布 stackhub-web 再发布 docker-library, 保持数据一致性
### 内核升级
内核升级是会需要停止软件服务来运行的,除了软件商店升级外,还需要升级以下内容:
1. docker cockpit 系统组件
2. 后台微服务容器
3. cockpit 对应插件
#### 升级限制
内核升级可能会因为架构系统等原因无法升级,在 CHANGELOG 中含有支持升级的最小版本号,根据此信息来升级到具体版本。
## 日志