部署
部署 Dossier 静态编辑器
Dossier 是静态浏览器应用。部署到 SIREN 时,只需要把构建后的 index.html、editor.js、editor.css、report.md 和 assets/ 放到控制主机上的 Dossier 目录。
SIREN WebUI 部署
示例配置从 /opt/siren/dossier 读取 Dossier 编辑器文件,并把 /opt/siren/dossier/report.md 作为左侧 Dossier 入口的默认报告。
使用 Dossier 项目的部署目标
npm install
make deploy-dry-run
make deploymake deploy 会先构建编辑器,再把 report.md 同步到 Sleuth 报告模板,并把 Dossier 运行时发布到 SIREN:/opt/siren/dossier。只发布运行时可使用 make deploy-runtime;需要更改目标时,设置 DOSSIER_DEPLOY_DIR、DOSSIER_DEPLOY_HOST 或 DOSSIER_DEPLOY_PATH。
手工复制
如果不使用 make deploy,可在控制主机上手工复制运行时文件:
npm install
npm run build
sudo mkdir -p /opt/siren/dossier
sudo rsync -av --exclude '.DS_Store' index.html editor.css editor.js report.md /opt/siren/dossier/
sudo rsync -av --delete --exclude '.DS_Store' --exclude 'assets/pasted/' assets /opt/siren/dossier/配置并重启 SIREN
webui:
dossierDir: /opt/siren/dossier修改后重启 siren_server,再从 WebUI 左侧点击 Dossier。
不要复制到 WebUI dist
不要把 Dossier 文件复制到 internal/server/webui/frontend/dist 或 frontend/public。Dossier 应作为外部静态目录部署,否则会被打包进 siren_server 二进制。
本地离线使用
在 Dossier 文件目录启动一个本地 HTTP 服务:
python3 -m http.server 8000然后访问:
http://localhost:8000页面默认加载同目录的 report.md。如需打开同源目录下的其他报告,可以使用:
http://localhost:8000/?md=case.md打包交付
Dossier 项目支持生成本地交付包:
make dist生成的压缩包包含 index.html、editor.js、editor.css、report.md、assets/ 和本地启动脚本,适合交给报告作者离线编辑。
反向代理
如果 WebUI 通过 Nginx 或 Caddy 暴露,建议把同一域名完整转发到 SIREN WebUI 端口,不要只代理 /dossier/。
只代理 /dossier/ 会导致编辑器页面可访问,但读取报告、保存正文或粘贴图片失败。需要单独配置路径时,请同时转发 Dossier 静态路径、报告读写接口、Dossier 状态接口和 WebUI 鉴权检查接口;接口边界见配置说明。