mirror of
https://github.com/QYG2297248353/appstore-1panel.git
synced 2026-06-16 01:02:14 +08:00
@@ -0,0 +1,145 @@
|
||||
# 应用制作说明
|
||||
|
||||
### 基础目录
|
||||
|
||||
`/app`
|
||||
|
||||
### 应用格式
|
||||
|
||||
```
|
||||
├── app_name // 应用名称
|
||||
├── logo.png // 应用 logo , 推荐 180 * 180 px
|
||||
├── data.yml // 应用声明文件
|
||||
├── README.md // 应用说明文档
|
||||
├── 2.2.0 // 应用版本
|
||||
│ ├── data.yml // 表单配置
|
||||
| ├── scripts // 脚本目录
|
||||
│ └── docker-compose.yml // docker-compose 文件
|
||||
└── 2.3.2 // 应用版本
|
||||
├── data.yml
|
||||
├── data
|
||||
└── docker-compose.yml
|
||||
```
|
||||
|
||||
#### 应用声明文件
|
||||
|
||||
```yaml
|
||||
# 固定参数
|
||||
additionalProperties:
|
||||
# 应用的 key , 仅限英文
|
||||
key: app_name
|
||||
# 应用名称 显示名称
|
||||
name: app_show_name
|
||||
# 应用标签
|
||||
tags:
|
||||
# 参考 tags.yml
|
||||
- WebSite
|
||||
# 应用中文描述, 推荐 30 字以内
|
||||
shortDescZh: 应用主要概述
|
||||
# 应用英文描述
|
||||
shortDescEn: Application main description
|
||||
# 应用类型
|
||||
type: website
|
||||
# 跨大版本升级
|
||||
crossVersionUpdate: true
|
||||
# 安装限制, 0 代表无限制
|
||||
limit: 0
|
||||
# 官网地址
|
||||
website: https://app.com
|
||||
# 仓库地址
|
||||
github: https://github.com/app/app
|
||||
# 文档地址
|
||||
document: https://docs.app.com
|
||||
```
|
||||
|
||||
##### 应用类型
|
||||
|
||||
| type | 说明 |
|
||||
|---------|--------------------------------------------------------|
|
||||
| website | website 类型在 1Panel 中支持在网站中一键部署,wordpress halo 都是此 type |
|
||||
| runtime | mysql openresty redis 等类型的应用 |
|
||||
| tool | phpMyAdmin redis-commander jenkins 等类型的应用 |
|
||||
|
||||
#### 脚本目录
|
||||
|
||||
+ `scripts` 安装脚本文件
|
||||
+ `init.sh` 安装前执行
|
||||
+ `upgrade.sh` 升级前执行
|
||||
+ `uninstall.sh` 卸载后执行
|
||||
|
||||
#### 表单配置
|
||||
|
||||
```yaml
|
||||
# 固定参数
|
||||
additionalProperties:
|
||||
formFields:
|
||||
# 默认值
|
||||
- default: ""
|
||||
# 安装后可修改
|
||||
edit: true
|
||||
# 是否禁用
|
||||
disabled: false
|
||||
# 环境变量 key
|
||||
envKey: PANEL_DB_HOST
|
||||
# 依赖应用 key
|
||||
key: mysql
|
||||
# 英文标签
|
||||
labelEn: Database Service
|
||||
# 中文标签
|
||||
labelZh: 数据库服务
|
||||
# 是否必填
|
||||
required: true
|
||||
# 依赖服务
|
||||
type: service
|
||||
# 是否在默认值基础上增加随机字符
|
||||
random: true
|
||||
# 校验规则
|
||||
rule: paramCommon
|
||||
# 下拉选择
|
||||
- default: ""
|
||||
envKey: LOG_LEVEL
|
||||
labelEn: Log level
|
||||
labelZh: 日志级别
|
||||
required: true
|
||||
type: select
|
||||
values:
|
||||
- label: DEBUG
|
||||
value: "DEBUG"
|
||||
- label: INFO
|
||||
value: "INFO"
|
||||
- label: WARNING
|
||||
value: "WARNING"
|
||||
- label: ERROR
|
||||
value: "ERROR"
|
||||
- label: CRITICAL
|
||||
value: "CRITICAL"
|
||||
# 端口效验
|
||||
- default: 3306
|
||||
envKey: PANEL_APP_PORT_DB
|
||||
labelEn: Database port
|
||||
labelZh: 数据库端口
|
||||
rule: paramPort
|
||||
type: number
|
||||
```
|
||||
|
||||
##### 字段说明
|
||||
|
||||
+ `type` 字段类型
|
||||
+ `service` 依赖服务
|
||||
+ `password` 密码
|
||||
+ `text` 文本
|
||||
+ `number` 数字
|
||||
+ `select` 下拉框
|
||||
+ `rule` 校验规则
|
||||
+ `paramPort` 用于限制端口范围为 1-65535
|
||||
+ `paramCommon` 英文、数字、.-和_,长度2-30
|
||||
+ `paramComplexity` 支持英文、数字、.%@$!&~_-,长度6-30,特殊字符不能在首尾
|
||||
+ `paramExtUrl` 格式为 http(s)://(域名/ip):(端口)
|
||||
+ `key` 特殊值
|
||||
+ `PANEL_APP_PORT_HTTP` Web应用端口
|
||||
+ `PANEL_APP_PORT_HTTPS` Web应用端口 SSL
|
||||
+ `PANEL_APP_PORT` 前缀将认定为端口,并且用于安装前的端口占用校验
|
||||
|
||||
#### docker-compose.yml 文件
|
||||
|
||||
通过使用 `${envKey}` 获取`表单配置`中的值
|
||||
Reference in New Issue
Block a user