Skip to content
EN

运行配置

本文只记录当前仓库可以从 Docker Compose、Dockerfile、CMake 和启动脚本确认的配置。 平台构建入口和完整命令见构建指南,安装与升级见部署指南

Docker Compose 入口

用途文件 / 入口服务
x86 Linuxdocker-compose.x86.ymlcosmo-x86
x86 Windowsdocker-compose.x86.windows.ymlcosmo-x86
Apple Silicon macOS Previewscripts/macos-docker-preview.shdocker-compose.x86.macos.ymlcosmo-x86-macos
Sophon 发布包docker-compose.sophon.ymlcosmo-sophon-package
Rockchip 发布包docker-compose.rockchip.ymlcosmo-rockchip-package

优先使用 scripts/docker-compose.sh 调用一次性构建服务;它会选择当前可用的 Compose V2/V1。

x86 Docker 配置

Dockerfile.x86 的主要构建参数:

参数默认值说明
RESOURCE_DIRdata/resource/aiboxresource_x86安装到运行镜像的资源目录
COSMO_BUILD_JOBS未设置时由构建脚本使用 nprocCPU 构建并行度;Mac Preview 默认覆盖为 1

运行镜像设置:

变量默认值说明
INSTALLPATH/appfs/cosmo_wander/cwai_data主安装目录
COSMO_PLATFORM_TYPEx86_64运行平台类型

Windows 和 macOS Preview 支持以下宿主机覆盖:

变量默认值说明
COSMO_X86_WEB_PORT8080Web 主机端口;Mac 仍只绑定 127.0.0.1
COSMO_X86_BUILD_JOBS1(仅 Mac Preview)amd64 仿真构建并行度

scripts/docker-entrypoint.x86.sh 创建数据和日志目录后执行:

bash
${INSTALLPATH}/scripts/run_start.sh start /data/cwaiuserdata/log/logs/INTE_RUN_container.log

管理平台签名凭据

向管理平台发送签名请求时,运行环境必须同时配置以下变量;变量值是凭据文件的绝对路径:

变量说明
COSMO_APP_KEY_FILEApp Key 文件
COSMO_APP_SECRET_FILEApp Secret 文件

两个文件都必须是普通文件,大小不超过 4096 字节,并且只包含一行非空内容。建议以只读 方式挂载并限制权限,不要把实际凭据写入镜像、Compose 文件或仓库。两个变量均未设置时, 签名管理平台请求保持禁用;只配置一个变量、使用相对路径或无效文件时,请求会被拒绝。

Sophon 构建配置

芯片型号通过 Compose 服务后的 --chip <型号> 传入:

参数支持值默认值
--chipbm1688cv186xbm1688

docker-compose.sophon.yml 向构建容器传入:

变量默认值说明
COSMO_MODEL_GUARD_BUILD_PROFILEpublic-runtimepublic-runtime(Open)或 production-release(Protected)
COSMO_PACKAGE_MODELSincludeincludepreserve;公开可部署包使用 include
NPM_CONFIG_MAXSOCKETS1npm 最大并发连接数
NPM_CONFIG_PROGRESSfalse关闭 npm 进度输出
NPM_CONFIG_FETCH_RETRIES3npm 拉取重试次数
NPM_CONFIG_FETCH_TIMEOUT120000npm 拉取超时,单位毫秒
NPM_CONFIG_PREFER_OFFLINEtrue优先使用 Compose npm 缓存
NPM_CONFIG_UPDATE_NOTIFIERfalse关闭 npm 更新提示

该 Compose 服务直接使用预构建 GHCR 镜像,不再提供旧文档中的 apt、Node 或 Rustup 镜像下载变量。网络排查应关注 GHCR 镜像拉取、npm 缓存填充和当前构建日志。

Rockchip 构建配置

变量 / 参数默认值说明
COSMO_TARGET_CHIPrk3576rk3576rv1126b;Compose 将它传给 --chip
COSMO_PACKAGE_MODELSincludeinclude 或仅用于代码/结构验证的 preserve
COSMO_BUILD_JOBS4交叉构建并行度
COSMO_ROCKCHIP_BUILDER_IMAGE仓库固定 digest 的 GHCR 镜像受控覆盖构建镜像
COSMO_RKNN_ARTIFACT_MANIFEST平台 profile 中的清单选择带来源、哈希、用途和许可证的模型 bundle;商业/专有输入应指向 ignored 任务目录中的独立清单

构建器还使用与 Sophon 相同的 npm 缓存/重试变量。RV1126B 的 include 构建会从 选定 artifact manifest 生成并校验 output/platform-artifacts/rv1126b/resource-overlaypreserve 只验证代码和包结构,不能替代设备验收。仓库默认清单是 AGPL-3.0 社区示例,不属于商业模型交付;商业/专有模型必须使用独立清单和许可记录。

资源目录

构建路径资源目录
x86 Dockerdata/resource/aiboxresource_x86
Sophon BM1688data/resource/aiboxresource_bm1688
Sophon CV186Xdata/resource/aiboxresource_cv186x
Rockchip RK3576data/resource/aiboxresource_rknn
Rockchip RV1126Bdata/resource/aiboxresource_rknn 共享模板 + model-artifacts/rv1126b 社区示例清单;目标 overlay 自动生成

构建脚本把选定目录作为 RESOURCE_DIR 交给安装规则。不同芯片的二进制产物仍必须 独立生成和验证,但算法、配置模板及 staging 代码保持共享。模型包会携带 resource/model-bundle.json 及对应许可证,包审计同时校验模型清单、大小和 SHA-256。

运行目录

路径说明
/appfs/cosmo_wander/cwai_data默认应用安装目录
/data/cwaiuserdata默认用户数据根目录
/data/cwaiuserdata/log/logs应用日志
/data/cwaiuserdata/upgrade升级暂存目录
/data/cwaiuserdata/tmp/*nginx 临时目录

设备部署可以通过 COSMO_APP_DATA_DIRCOSMO_DATA_DIR 覆盖应用/数据根目录;覆盖值必须是 受控的绝对路径,并与服务配置和持久化策略一致。

端口

端口说明
8080x86 Docker 默认 Web 主机端口
80容器内 nginx
8000后端 HTTP;x86 Compose 对主机只发布同号 UDP 设备发现端口
9000后端 WebSocket;通常经 nginx 访问
1936SRS RTMP
1985SRS API
18088SRS HTTP stream

流媒体变量

scripts/run_start.sh 设置以下默认值:

bash
COSMO_STREAM_PLAY_MODE=srs
COSMO_STREAM_RTMP_BASE=rtmp://127.0.0.1:1936/live
COSMO_STREAM_RTC_API_PORT=1985
COSMO_STREAM_HTTP_PORT=18088

macOS Preview 覆盖 COSMO_STREAM_PLAY_MODE=httpflv-srs,并继续使用 18088 播放 HTTP-FLV。

CMake Cache 设置

以下值可通过 -D<名称>=<值> 配置,但推荐通过仓库构建脚本选择兼容组合:

名称类型 / 默认值说明
COSMO_TARGET_ARCHSTRING / aarch64aarch64x86_64
COSMO_TARGET_CHIPSTRING / 空记录目标芯片;后端脚本传入受支持值
BUILD_TESTSBOOL / OFF构建 cosmo-tests
COSMO_ENABLE_COVERAGEBOOL / OFF为测试构建启用 gcov
COSMO_DEV_MODEBOOL / OFF关闭看门狗等生产行为,并启用开发日志输出
COSMO_NN_USE_SOPHON_BACKENDBOOL / ONSophon 推理后端
COSMO_NN_USE_CPU_BACKENDBOOL / OFFONNX Runtime CPU 后端
COSMO_NN_USE_RKNN_BACKENDBOOL / OFFRockchip RKNN 后端
COSMO_MEDIA_USE_SOPHON_BACKENDBOOL / 派生默认Sophon 媒体后端
COSMO_MEDIA_USE_CPU_BACKENDBOOL / 派生默认FFmpeg 软件媒体后端
COSMO_MEDIA_USE_ROCKCHIP_BACKENDBOOL / 派生默认Rockchip MPP/RGA 媒体后端
COSMO_ENABLE_OPENH264BOOL / 派生默认x86 CPU 媒体路径默认开启,可显式配置
COSMO_MODEL_GUARD_BUILD_PROFILESTRING / public-runtimepublic-runtimeproduction-release
COSMO_PACKAGE_MODELSSTRING / includeincludepreserve

三个 NN 后端必须且只能启用一个;三个媒体后端也必须且只能启用一个。Sophon 媒体后端要求 Sophon 推理运行时,Rockchip 媒体后端要求 aarch64 目标。

以下为自动派生或固定内部值,不应由调用者覆盖:

名称当前行为
COSMO_OPENH264_USE_ASM固定为 OFF
COSMO_MODEL_GUARDSophon 推理后端为 ON,其他推理后端为 OFF

Released under the Apache 2.0 License.