mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-07-01 15:32:48 +08:00
- 新增 source/stack/docker-dev/Dockerfile: 基于 full 模式 + Xdebug + 开发 PHP 配置 - 新增 source/stack/docker-dev/docker-compose.yaml: 4 服务编排 (app/mysql/redis/phpmyadmin) - 新增 source/stack/docker-dev/.docker-dev.env: 开发环境配置模板 (HOSTNAME=mysql, HOSTPORT=3306) - 更新 source/stack/stack.json: 注册 docker-dev 模式, managed_files 增加 .docker-dev.env - 更新 .gitignore: 排除 /docker-dev/ 数据目录
Stack 模式目录规范
本目录用于维护“模式化生效文件”,由 php think admin:stack:mode 命令读取并覆盖到仓库根目录。
目录结构
source/stack/stack.json:全局清单,定义default_mode、managed_files、modes元数据。source/stack/default/:默认行为基线目录。source/stack/{mode}/:具体模式目录,按“仓库相对路径”放置文件。
default 目录规则(强约束)
source/stack/default/必须与代码库默认行为一致。- 当默认行为文件变更时(如
Dockerfile、docker-compose.yaml、.gitea/workflows/build-and-deploy.yml),必须同步更新default目录对应文件。 - 该规则通过目录维护规范与代码评审保障,不作为每次切换命令的运行时阻断条件。
模式覆盖规则
- 仅允许覆盖
stack.json的managed_files中声明的文件。 - 切换时按“目标模式优先,default 模式兜底”解析最终文件内容:
- 目标模式提供某文件:使用目标模式文件;
- 目标模式未提供某文件:回落使用
default目录对应文件。
- 首期固定模式:
default、full、base-build。
基础镜像说明
base-build/docker/Dockerfile.base为基础镜像构建文件,默认标记为作者维护范围(author_only=true)。- 推荐标签策略:
latest+ 时间戳(如20260424120000)。