SIREN

部署

部署 Dossier 静态编辑器

Dossier 是静态浏览器应用。部署到 SIREN 时,只需要把构建后的 index.htmleditor.jseditor.cssreport.mdassets/ 放到控制主机上的 Dossier 目录。

SIREN WebUI 部署

示例配置从 /opt/siren/dossier 读取 Dossier 编辑器文件,并把 /opt/siren/dossier/report.md 作为左侧 Dossier 入口的默认报告。

使用 Dossier 项目的部署目标

Dossier 项目目录
npm install
make deploy-dry-run
make deploy

make deploy 会先构建编辑器,再把 report.md 同步到 Sleuth 报告模板,并把 Dossier 运行时发布到 SIREN:/opt/siren/dossier。只发布运行时可使用 make deploy-runtime;需要更改目标时,设置 DOSSIER_DEPLOY_DIRDOSSIER_DEPLOY_HOSTDOSSIER_DEPLOY_PATH

手工复制

如果不使用 make deploy,可在控制主机上手工复制运行时文件:

Dossier 项目目录
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

server_config.yaml
webui:
  dossierDir: /opt/siren/dossier

修改后重启 siren_server,再从 WebUI 左侧点击 Dossier

不要复制到 WebUI dist

不要把 Dossier 文件复制到 internal/server/webui/frontend/distfrontend/public。Dossier 应作为外部静态目录部署,否则会被打包进 siren_server 二进制。

本地离线使用

在 Dossier 文件目录启动一个本地 HTTP 服务:

python3 -m http.server 8000

然后访问:

http://localhost:8000

页面默认加载同目录的 report.md。如需打开同源目录下的其他报告,可以使用:

http://localhost:8000/?md=case.md

打包交付

Dossier 项目支持生成本地交付包:

Dossier 项目目录
make dist

生成的压缩包包含 index.htmleditor.jseditor.cssreport.mdassets/ 和本地启动脚本,适合交给报告作者离线编辑。

反向代理

如果 WebUI 通过 Nginx 或 Caddy 暴露,建议把同一域名完整转发到 SIREN WebUI 端口,不要只代理 /dossier/

只代理 /dossier/ 会导致编辑器页面可访问,但读取报告、保存正文或粘贴图片失败。需要单独配置路径时,请同时转发 Dossier 静态路径、报告读写接口、Dossier 状态接口和 WebUI 鉴权检查接口;接口边界见配置说明

On this page