mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-08-30 12:45:32 +08:00
1.9 KiB
1.9 KiB
部署环境与命令执行
来源:框架内置(ulthon-) 作用域:部署配置、命令执行环境判断 触发条件:执行 php think 命令、配置部署模式、切换运行环境时加载
部署栈模式
source/stack/为模式文件统一目录(含default/与各模式目录)default/必须与代码库默认行为一致- 默认行为相关文件变更时需同步更新
source/stack/default/对应文件
运行模式判断(B-route 工作流)
执行 php think 命令前,必须先判断当前运行模式。B-route 工作流下,模式由"当前所在目录"决定,不再覆盖仓库根目录。
判断方式:检查仓库根目录是否含 Docker 文件(Dockerfile / docker-compose.yaml)。
- 根目录无 Docker 文件(default 模式):宿主机直接执行
php think。- 默认基线行为是
php think run(ThinkPHP 内置服务器)。 - 启动开发服务器:在仓库根目录执行
php think run。
- 默认基线行为是
- 需要 Docker 模式:进入对应模式目录启动栈。
- 启动:
cd source/stack/<mode>后docker compose up -d。 - 模式目录内的
docker-compose.yaml是该模式的栈定义,bind mount 通常指向仓库根目录。 - 在容器外执行
php think:docker compose -f source/stack/<mode>/docker-compose.yaml exec <service> php think ...,或在模式目录内docker compose exec <service> php think ...。 - 示例:
docker compose -f source/stack/docker-dev/docker-compose.yaml exec ulthon_admin php think tools:http:call。
- 启动:
- 可用模式见
source/stack/stack.json与source/stack/README.md(default / docker-serve / docker-dev / full / author 等)。 - 判断技巧:如果不确定当前是否处于容器内,看
pwd是否在仓库根、根目录有无Dockerfile、docker ps是否有相关容器在跑。容器内执行php think不需要前缀。