容器 supervisor.conf 被 Press 覆盖

bench 容器内的 supervisor.conf 由 Press 自动生成和管理。手动追加的 [program:xxx] 段在 Press 重建 bench 时会被覆盖消失。


1. 归属

问题答案
属于哪个仓库?frappe/press 的 bench 管理逻辑
在容器内路径?/home/frappe/frappe-bench/config/supervisor.conf
在构建链的哪一步?Press Deploy 流程的 bench 创建/重建阶段

2. 为什么不能修正

Press 设计就是这样的——bench 容器内的进程由 Press 管理。Press 负责生成 supervisor.conf 确保正确的进程在运行(gunicorn、worker、scheduler 等)。你手动加的内容 Press 不知道,重建时自然覆盖。


3. 缓解措施

需要自定义常驻进程时,放宿主机用 systemd 托管,不走容器内 supervisor。例如:

  • 邮件桥接 → 宿主机 systemd cf-smtp-bridge.service
  • cloudflared → 宿主机 systemd

这意味着每个自定义 daemon 需要独立部署流程,不能依赖容器的 “一体式” 部署。