This commit is contained in:
qiaofeng1227 2023-11-21 15:00:57 +08:00
parent aaf12377bb
commit 0c5893b61c

View file

@ -27,7 +27,7 @@ API 接口功能设计:
body: body:
{ {
- app_name # 产品名 - app_name # 产品名
- app_id # 自定义应用名称 - app_id # 自定义应用名称+随机字符串组成唯一标识
- domains[] #域名-可选 - domains[] #域名-可选
- default_domain #默认域名-可选:设置.env中APP_URL - default_domain #默认域名-可选:设置.env中APP_URL
- edition{dist:community, version:5.0} #应用版本来自variable.json但目前variable.json中只有 version 的数据 - edition{dist:community, version:5.0} #应用版本来自variable.json但目前variable.json中只有 version 的数据
@ -38,9 +38,7 @@ body:
过程: 过程:
1. 参数验证: 1. 参数验证:
app_id 验证: app_id 验证:随机字符串保证唯一性,无需验证
业务要求gitea 中是否存在同名的 repositoryPortainer中是否存在同名stack
技术要求-【非空容器要求2位-20位字母数字以及-组成 giteatodo portainertodo】
app_name 验证: 在gitea容器的library目录下验证 app_name 验证: 在gitea容器的library目录下验证
domains[]验证是否绑定过数量不能超过2泛域名+其他域名 domains[]验证是否绑定过数量不能超过2泛域名+其他域名
default_domain验证来自domains[]中,自定义域名优先 default_domain验证来自domains[]中,自定义域名优先
@ -267,7 +265,10 @@ List all apps继承 Portainer API /stacks
2. portainer 中的应用目录的 variables.json 或 repository variables.json 2. portainer 中的应用目录的 variables.json 或 repository variables.json
3. Gitea API 列出当前 APP 的 repository 之 URL提供访问链接? 3. Gitea API 列出当前 APP 的 repository 之 URL提供访问链接?
4. 所用应用的数据目录:/var/lib/docker/volumes/... 4. 所用应用的数据目录:/var/lib/docker/volumes/...
5. Portainer 通过主容器的 Label 标签和 Ports获取 app_*_port等 5. Portainer 各种说明
- 主容器:通过 W9_HTTP_PORT_SET获取http端口通过W9_DB_PORT_SET获取DB端口通过W9_MQ_PORT_SET获取消息队列端口
> 当数据库是主应用时url 显示为 IP和端口以非链接形式展示
- web应用数据库 通过 W9_DB_EXPOSE 来确定数据库类型然后根据数据库字典获得数据库用户名POWER_PASSWORD是数据库密码HOST 是APP_ID-db
#### deploy/apps/{id} #### deploy/apps/{id}
@ -305,9 +306,9 @@ function proxy(hostdomains[], Optional:port, Optional:exra_proxy.conf)
也可以使用 getPort(), getExra_proxy() 也可以使用 getPort(), getExra_proxy()
1. 获取 Port: 从 portainer.containers 接口中 Label 属性集中获取 http 或 https 1. 获取 Port: 从 .env 获取 W9_HTTP_PORT 或者 W9_HTTPS_PORT
> com.docker.compose.http.port": "9001" | com.docker.compose.https.port": "9002" > W9_HTTP_PORT=9001 | W9_HTTPS_PORT=9002根据是否含有HTTPS决定proxy的协议
2. 获取 exra_proxy.conf: 从 Gitea 接口中获取 repository 的 src/nginx_proxy.conf 2. 获取 exra_proxy.conf: 从 Gitea 接口中获取 repository 的 src/nginx_proxy.conf