- 统一标注引擎为 CVAT:客户端/配置/格式转换、iframe 标注页、docker-compose.cvat.yml 与 no_auth 补丁 - 移除 Label Studio 相关配置与构建脚本,清理 embedded.bak 备份与误提交的 node_modules - 新增「我的标注」:跨 Campaign 收件箱、逐张清单、CVAT frame 跳转 - 飞书任务分配:通讯录同步选人、按量分配、分配后 DM 通知(含 my-tasks 链接) - ADAS cuboid_7cls 数据湖接入:workflow 路径、register-batch、开标上传与标注同步 - 数据湖挂载 AS_DATA_LAKE_ROOT、datasets/adas 符号链接、reset_labeling 运维脚本 - 补充 docs/HANDOVER.md 项目交接文档 Co-authored-by: Cursor <cursoragent@cursor.com>
43 lines
1.5 KiB
Bash
Executable File
43 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
||
# 一键启动 HSAP 平台 + 内置 CVAT 标注引擎
|
||
set -euo pipefail
|
||
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||
cd "$ROOT"
|
||
|
||
COMPOSE_FILES=(-f docker-compose.yml -f docker-compose.cvat.yml)
|
||
|
||
if [[ ! -f .env ]]; then
|
||
cp .env.example .env
|
||
echo "已创建 .env(默认挂载本仓库;大文件数据可设置 AS_WORKSPACE_ROOT)"
|
||
fi
|
||
DEFAULT_WS="$(cd "$ROOT/.." && pwd)/workspace"
|
||
if [[ -d "$DEFAULT_WS/DMS" ]] && ! grep -q '^AS_WORKSPACE_ROOT=' .env 2>/dev/null; then
|
||
echo "AS_WORKSPACE_ROOT=$DEFAULT_WS" >> .env
|
||
echo "已写入 AS_WORKSPACE_ROOT=$DEFAULT_WS"
|
||
fi
|
||
|
||
if ! grep -q '^CVAT_HOST=' .env 2>/dev/null; then
|
||
echo "CVAT_HOST=http://hsap-cvat-server:8080" >> .env
|
||
fi
|
||
if ! grep -q '^CVAT_PUBLIC_URL=' .env 2>/dev/null; then
|
||
echo "CVAT_PUBLIC_URL=http://127.0.0.1:8080" >> .env
|
||
fi
|
||
|
||
if ! command -v docker >/dev/null 2>&1; then
|
||
echo "未安装 Docker。Ubuntu: sudo apt install docker.io docker-compose-v2"
|
||
exit 1
|
||
fi
|
||
|
||
docker compose "${COMPOSE_FILES[@]}" up -d --build "$@"
|
||
|
||
echo ""
|
||
echo "服务:"
|
||
echo " HSAP 平台 http://127.0.0.1:${AS_PLATFORM_PORT:-8787}"
|
||
echo " CVAT 标注画布 http://127.0.0.1:${CVAT_PORT:-8080} (由 HSAP 嵌入,无需单独登录)"
|
||
echo " PostgreSQL localhost:${AS_DB_PORT:-5432}"
|
||
echo " Redis localhost:${AS_REDIS_PORT:-6379}"
|
||
echo ""
|
||
echo "React 热更新: docker compose --profile dev up -d web-dev → :5173"
|
||
echo "日志: docker compose ${COMPOSE_FILES[*]} logs -f platform worker cvat_server"
|
||
echo "停止: docker compose ${COMPOSE_FILES[*]} down"
|