augushong
|
7341268ceb
|
fix(docker): run.sh 加 umask 000 + 预创建 runtime 子目录
bind mount 模式下 Dockerfile 的权限处理被宿主目录覆盖,
PHP 新建的子目录(runtime/cache/da/ 等)默认 755 导致 www-data 无法写入。
- 开头加 umask 000 让子进程创建的文件/目录全局可写
- mkdir 预创建 cache/log/temp/session/nginx 子目录
- docker-dev 和 docker-dev-sync 同步修复
|
2026-08-08 10:33:44 +08:00 |
|
augushong
|
ce191adfd8
|
feat(nginx-log): 4 个 stack 模板增加 log_format 与 access_log 配置(Docker 开箱即用)
|
2026-07-28 00:24:26 +08:00 |
|
augushong
|
4ebcea0669
|
chore(stack): 删除 docker-dev/docker-dev-sync 残留的 .docker-dev.env
B-route 下 .env 只在仓库根,bind mount 容器直接读根目录 .env,
模式目录不再需要独立的 env 文件
|
2026-07-23 22:17:18 +08:00 |
|
augushong
|
544604ebff
|
fix(stack): 其余4个模式同步 bind mount 兼容修复
与 docker-dev(commit 5797885)保持一致的修复方案:
- run.sh 改为 SCRIPT_DIR 自动检测脚本所在目录
- Dockerfile ENTRYPOINT/chmod 改为完整路径
/var/www/html/source/stack/<mode>/source/docker/run.sh
- 基础配置(nginx.conf/zz-phprun.ini/zz-phpfpm.conf)复制到各模式目录
- ln -s 改为 ln -sf(防止容器重启时 File exists)
docker-dev-sync 额外保留 sync.sh 调用逻辑(init + watch),
仅路径改为 \/sync.sh
|
2026-07-22 23:40:33 +08:00 |
|
augushong
|
6bc661117c
|
fix(stack): 修复 B-route 下所有 Dockerfile COPY 路径与 build context 不匹配
B-route 把 build context 改为仓库根后,Dockerfile 中的 COPY source/docker/...
和 chmod/ENTRYPOINT 引用 /var/www/html/source/docker/ 全部失效。
根因:
- 仓库根有全局 source/docker/(仅 nginx.conf/zz-phprun.ini/zz-phpfpm.conf 基础配置)
- 模式专属配置(run.sh、zzz-dev.ini、zzz-xdebug.ini 等)在 source/stack/<mode>/source/docker/
- COPY . 把全局 source/docker/ 复制进容器,但缺少模式专属文件
- 旧 COPY source/docker/zzz-dev.ini 在 context=仓库根时找不到文件
修复(所有 5 个模式统一):
- 每个 Dockerfile 在 COPY . 后加 rm -rf + ln -sf symlink,
让 /var/www/html/source/docker 指向模式专属配置目录
- COPY ini 文件路径改为完整的 source/stack/<mode>/source/docker/...
- .dockerignore 去掉 source/stack/ 排除(配置文件仅几 KB,
但 COPY 需要这些文件在 build context 中)
- .dockerignore 加 docker-dev/docker-dev-data 排除(旧数据残留)
|
2026-07-22 23:18:16 +08:00 |
|
augushong
|
0a04181d12
|
revert(stack): un-merge docker-dev-sync, restore as independent B-route directory
docker-dev 清理合并残留:去掉 rsync/mkdir/chmod、删 ulthon_admin_sync 服务、
删 .env(COMPOSE_PROFILES)、删 sync.sh、删 .dockerignore、去 SYNC_INTERVAL。
docker-dev-sync 恢复独立目录并 B-route 化(context: ../../..)。
两个模式各自独立、各自完整。
|
2026-07-22 22:42:58 +08:00 |
|
augushong
|
28576def0a
|
feat(stack): 合并 docker-dev-sync 到 docker-dev 配置,统一 Dockerfile
|
2026-07-22 01:27:52 +08:00 |
|
augushong
|
c4fbd60bbc
|
fix(timer): 修正定时器参数拼写 quit -> quiet(静默模式)
|
2026-06-02 20:09:37 +08:00 |
|
augushong
|
ddaa0ca5a9
|
feat(stack): 新增 docker-dev-sync 模式,优化 Windows 下 Docker 开发 I/O 性能
- 新增 source/stack/docker-dev-sync/ 模式目录
- 宿主代码映射到 /var/www/source(bind mount 中转)
- 容器内 rsync 定时同步到 /var/www/html(原生文件系统)
- vendor 由 Docker build 管理,不参与同步
- rsync 使用 --no-perms 避免保留 Windows 源文件权限
- 排除 docker-dev/、runtime/、.git/ 等无关目录
- SYNC_INTERVAL 环境变量可配置轮询间隔(默认 3 秒)
- 更新 stack.json 注册模式并声明 sync.sh 为托管文件
- 调整 CI 构建流程:先安装依赖再切换 stack 模式
|
2026-06-01 22:32:29 +08:00 |
|