nb env proxy caddy
nb env proxy caddy 用来为一个 CLI 托管的 env 生成 Caddy 代理配置。它适合这几类场景:你已经有域名,想尽快把 HTTPS 跑通,另外不想自己维护太多 TLS 细节。
这个命令只适用于当前机器上可访问运行态的托管 env,也就是 local 或 docker。如果一个 env 只有远程 API 连接,或者是 SSH env,那么这个命令暂时不能用。
用法
参数
默认生成结果
如果你不传 --output,CLI 会在 ~/.nocobase/proxy/caddy/ 下面维护这些文件:
其中:
generated.caddy只给 CLI 维护,不要手改app.caddy可以改,不过要保留 CLI 自动插入的托管 importnocobase.caddy主要给--install使用
注意
如果你要补 Caddy 站点级别的配置,改 app.caddy 就行。generated.caddy 会在下次执行 nb env proxy caddy 时被覆盖。
如果你传了 --output,CLI 只会把自动生成的配置写到这个文件,不会额外创建或更新 app.caddy 和共享主配置。
相关配置项
下面几个 CLI 配置项会直接影响 Caddy 生成结果:
通常来说,大部分场景不用改 proxy.nb-cli-root。只有当 Caddy 运行在另一个容器、挂载目录或路径视角里时,才需要把它改成 Caddy 实际能访问到的根路径。
说明
--host很重要。Caddy 会根据站点地址判断是否接管 HTTPS。正式环境里,默认尽量传一个已经解析到当前服务器的域名--port只能传1到65535之间的整数- 上游 NocoBase 应用端口来自已保存 env 的
appPort,不是--port - 如果命令提示 env 缺少
appPort,先执行nb env update <name>,或者显式补上nb env update <name> --app-port <port> - 如果你用
nb env update修改了app-port、app-public-path这类会影响代理渲染结果的配置,改完后通常还要重新执行nb env proxy caddy --print不能和--install、--reload一起使用--output不能和--install、--reload一起使用

