mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-08-30 20:55:32 +08:00
Stack 模式目录
本目录维护多种部署/运行模式的独立栈定义。每个模式是 source/stack/ 下一个独立子目录。
使用方式
模式目录可以直接使用,也推荐复制一份出来自定义:
直接使用:cd source/stack/docker-dev && docker compose up -d
复制后自定义(推荐):
# 复制一份模板
cp -r source/stack/docker-dev source/stack/docker-dev-myproject
# 修改副本中的端口、服务配置等
# (如 compose 的 name、ports、volumes 等)
# 运行副本
cd source/stack/docker-dev-myproject && docker compose up -d
复制后自定义的好处:
- 框架更新(
admin:update)只更新原始模板,不覆盖你的副本 - 可以基于同一个模板创建多个实例(如 dev / test 分开跑)
- 端口、服务配置等自定义不污染框架原始模板
启动与命令执行
cd source/stack/<mode>docker compose up -d(首次会自动 build)- 在模式目录内执行命令:
docker compose exec <service> php think ... - 或在仓库根目录:
docker compose -f source/stack/<mode>/docker-compose.yaml exec <service> php think ...
可用模板
| 模式 | 说明 |
|---|---|
default |
默认基线,仓库根目录 php think run,无 Docker 文件 |
docker-serve |
Docker 部署模式(基于基础镜像,nginx + php-fpm) |
docker-dev |
Docker 开发模式(nginx + php-fpm + MySQL + Redis + phpMyAdmin + Xdebug) |
docker-dev-sync |
Docker 开发模式 - Windows I/O 优化(rsync 同步,避免 bind mount 慢速问题) |
full |
完整服务栈(规划中),从 PHP 镜像从头构建 |
author |
框架作者维护工具(基础镜像构建、发布脚本等) |
author为框架作者专用,使用者一般不需要。
default 目录规则(强约束)
source/stack/default/必须与代码库默认行为一致(php think run,不依赖 Docker)- 默认行为相关文件变更时,必须同步更新
default目录对应文件 - 该规则通过目录维护规范与代码评审保障,不作为运行时阻断条件
基础镜像
author/docker/Dockerfile.base为基础镜像构建文件,属于作者维护范围- 推荐标签策略:
latest+ 时间戳(如20260424120000)