# CoMi Note(录音卡)部署手册

# 环境准备

  1. 当前服务是CoMi移动端中录音卡后台服务,如需使用录音卡,则必须部署。
  2. CoMi版本必须是2.1.0及以上。
  3. 使用公有云部署录音卡需要准备一台能够访问外网服务器。
  4. 部署需要Mysql数据以及Redis,参考AI建议提前准备。

# 公有化云服务开通

公有化部署需要先开通火山引擎 TOS 对象存储和阿里云听悟。云厂商控制台入口和页面布局可能调整,实际操作以官方文档为准。

  • 火山引擎 TOS 控制台:https://console.volcengine.com/tos
  • 火山引擎 TOS 快速入门:https://www.volcengine.com/docs/6349/74830
  • 阿里云听悟控制台:https://nls-portal.console.aliyun.com/tingwu
  • 阿里云听悟快速入门:https://help.aliyun.com/zh/tingwu/getting-started-1

# 火山引擎 TOS 对象存储

1778320411625.png

开通后需要拿到并填写以下配置:

配置项 说明
COMI_TOS_BUCKET TOS 存储桶名称。建议为当前应用单独创建 Bucket,避免和其他业务混用。
COMI_TOS_ACCESS_KEY 火山引擎访问密钥 AccessKey。建议使用权限收敛的子账号或服务账号。
COMI_TOS_SECRET_KEY 火山引擎访问密钥 SecretKey。不要写入公开仓库。
COMI_TOS_REGION Bucket 所在区域,例如 cn-beijing。不填时使用应用默认值。
COMI_TOS_ENDPOINT TOS 服务端点,例如 https://tos-cn-beijing.volces.com。不填时使用应用默认值。

建议操作顺序:

  1. 登录火山引擎控制台,进入对象存储 TOS,并完成服务开通。
  2. 在“桶列表”中创建 Bucket。当前配置默认使用北京区域,若选择其他区域,需要同步修改 COMI_TOS_REGIONCOMI_TOS_ENDPOINT
  3. 记录 Bucket 名称,填入 COMI_TOS_BUCKET
  4. 进入“个人中心 -> 权限与安全 -> API 访问密钥”创建密钥。
  5. Access Key ID 填入 COMI_TOS_ACCESS_KEY,将 Secret Access Key 填入 COMI_TOS_SECRET_KEY
  6. 确认该密钥具备当前 Bucket 的上传、下载和读取权限。
  7. COMI_TOS_* 配置写入 config/application-prod.yml 或通过环境变量注入。

# 阿里云听悟

1778320505554.png 开通后需要拿到并填写以下配置:

配置项 说明
COMI_TRANSCRIPTION_PROVIDER 公有化部署固定填写 tingwu,表示使用听悟作为转写提供方。
COMI_TINGWU_ENABLED 公有化部署固定填写 true
COMI_TINGWU_AK 阿里云 AccessKey ID。建议使用权限收敛的 RAM 用户。
COMI_TINGWU_SK 阿里云 AccessKey Secret。不要写入公开仓库。
COMI_TINGWU_APP_KEY 听悟项目 AppKey。
COMI_TINGWU_REGION 听悟服务地域,例如 cn-beijing。不填时使用应用默认值。
COMI_TINGWU_ENDPOINT 听悟服务端点,例如 tingwu.cn-beijing.aliyuncs.com。不填时使用应用默认值。

建议操作顺序:

  1. 登录阿里云听悟控制台,开通通义听悟服务。
  2. 在“服务管理与开通”中开通“音视频文件转写”。
  3. 创建听悟项目。回调方式选择“不设置回调”,由当前服务主动轮询转写结果。
  4. 记录项目 AppKey,填入 COMI_TINGWU_APP_KEY
  5. 进入“个人中心 -> 权限与安全 -> AccessKey”,创建或选择 AccessKey。
  6. AccessKey ID 填入 COMI_TINGWU_AK,将 AccessKey Secret 填入 COMI_TINGWU_SK
  7. COMI_TRANSCRIPTION_PROVIDER=tingwuCOMI_TINGWU_ENABLED=trueCOMI_TINGWU_* 配置写入 config/application-prod.yml 或通过环境变量注入。

# 部署准备

530:支持国产化适配,一体化安装,Docker部署

安装包获取途径: 1778321390434.png

# 目录结构

comi-note-backend-release/
├── app/                     # 存放 Spring Boot 可执行 jar
├── jre/                     # 已解压的内置 JDK 25 运行时 (Linux x64)
├── bin/
│   ├── env.sh               # 环境变量集中配置
│   ├── start.sh             # 启动 (支持前台 / 后台守护)
│   ├── stop.sh              # 优雅停止
│   └── status.sh            # 进程 + 健康端点状态
├── config/
│   └── application-prod.yml # 外部生产配置覆盖,配置项已附中文说明
├── docs/
│   └── images/              # README 配套流程图
├── jdk-25_linux-x64_bin.tar.gz # JDK 25 原始压缩包,已解压到 jre/
├── logs/                    # 运行日志 (自动创建)
├── run/                     # PID 文件 (自动创建)
├── storage/                 # 本地存储占位(若使用 local 存储模式)
└── README.md
  1. 上传部署包 上传comi-note-1.0.zip到/data/Seeyon/Comi下 执行以下解压命令:如遇报错参考AI回答,解决没有unzip等命令报错。

    unzip comi-note-1.0.zip
    

    然后进入comi-note-backend-release下。

  2. 确认 jar 包

    ls app/*.jar
    

    发布包当前已包含应用 jar。若后续替换版本,app/ 目录下需有且仅有一个jar,start.sh 会自动识别第一个 jar。

  3. 设置执行权限

    chmod +x bin/*.sh jre/bin/java
    
  4. 访问配置

    CoMi Note 需在 OA 的 Nginx 上增加转发路由。

    修改nginx下comi.conf文件,增加如下配置,保存后重启nginx:

    location /seeyon/comi-note {
    	proxy_set_header X-Real-Ip $remote_addr;
    	proxy_set_header Host $http_host;
    	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    
    	rewrite ^/seeyon/comi-note/(.*)$ /$1 break;
    	gzip off;
    
    	# 替换为当前 CoMi Note 后端服务地址和公网 HTTP 端口,默认端口为 8905。
    	proxy_pass http://172.20.2.38:8905;
    }
    
  5. 配置生产参数 编辑 config/application-prod.yml,先选择部署形态,再填写对应必填项。application-prod.yml 中每个配置项已给出中文注释,敏感信息

    通用基础配置需确认 MySQL、Redis、外部认证地址等基础服务参数。

    公有化部署使用阿里云听悟转写 + 火山引擎 TOS 存储,必填:

    • COMI_TRANSCRIPTION_PROVIDER: tingwu
    • COMI_TINGWU_ENABLED: true
    • COMI_TINGWU_AK
    • COMI_TINGWU_SK
    • COMI_TINGWU_APP_KEY
    • COMI_TOS_BUCKET
    • COMI_TOS_ACCESS_KEY
    • COMI_TOS_SECRET_KEY
    • COMI_STORAGE_PUBLIC_BASE_URL 配置为对应的外网访问地址,例如:http://nginxIP:nginxPort/seeyon/comi-note

    注意: 默认 profile 为 prod,请确认 MySQL、Redis 地址已修改为实际值。

# !!特别注意:修改配置文件application-prod.yml中的参数时,需要注意冒号后面一定要空格,例如(COMI_TOS_ACCESS_KEY: xxxx)

# 启动、停止、状态

# 后台守护启动(默认推荐)
./bin/start.sh

# 前台启动(排错时使用,Ctrl+C 退出)
./bin/start.sh -f

# 查状态
./bin/status.sh

# 优雅停止 (默认等待 30s, 超时 kill -9)
./bin/stop.sh

# 强制停止
./bin/stop.sh -f

启动成功后,logs/stdout.log 可查看实时输出,应用内部日志位于 logs/

# 端口

用途 默认端口 环境变量
公网 HTTP 8905 COMI_PUBLIC_PORT
内网 HTTP 8907 COMI_INTERNAL_PORT

健康检查: curl http://127.0.0.1:8905/actuator/health

# 配置覆盖优先级

由高到低:

  1. bin/env.sh 里的环境变量 (例如 COMI_DB_HOST)
  2. config/application-prod.yml (外部 yaml 覆盖)
  3. jar 内 application-prod.yml
  4. jar 内 application.yml

# 故障排查

  • start.sh未找到 Java 运行时 —— 检查 jre/bin/java 是否存在、可执行。
  • start.sh未在 app/ 发现 jar —— 拷贝 jar 到 app/
  • 启动后立即退出 —— 查看 logs/stdout.log,常见是 MySQL/Redis 地址错误。
  • 时区不对 —— 启动参数已强制 Asia/Shanghai,如需变更改 bin/start.sh-Duser.timezone

# 系统配置

后端服务启动并完成应用初始化后,还需要在 CoMi 后台完成 CoMi Note 的应用授权和基础配置。 1778320324506.png

配置步骤:

  1. 更新 CoMi 版本并完成应用初始化。
  2. 在应用授权中,将 CoMi Note 授权给实际需要使用的人员或组织。
  3. 使用系统管理员账号登录 OA。
  4. 进入 CoMi 智能门户 -> CoMi 后台管理 -> 系统管理员 -> CoMi Note -> 基础配置
  5. 在“智能应用绑定设置”中选择 CoMi Note 智能应用。
  6. 点击“保存”,使基础配置生效。

注意事项:

  • “智能应用绑定设置”必须选择 CoMi Note,否则 CoMi Note 相关能力无法正确关联到当前应用。
  • 公有云部署需先完成阿里云听悟和火山引擎 TOS 配置,再在基础配置中选择“公有云部署”。
  • 私有化部署需先确认内网转写服务可访问,并已将转写服务出口 IP 加入 COMI_INTERNAL_IP_WHITELIST
  • 保存后重新进入基础配置页,确认“智能应用绑定设置”已回显为 CoMi Note

私有化部署使用内网转写服务(参考录音卡ASR部署手册),当前服务必填配置:

  • COMI_INTERNAL_IP_WHITELIST:内网接口 IP 白名单。当前服务只接收转写服务回调下载文件请求,请填写转写服务出口 IP。
  • COMI_STORAGE_PUBLIC_BASE_URL:文件公网访问基础地址,需保证转写服务可访问。
  • COMI_LLM_RECORDING_REQUEST_URL:录音相关 LLM 服务请求地址。
    编撰人:chengao