# DataOps Platform 发布包清单 > 版本以打包日期为准,开发侧执行 `sync_release.sh` + `package_release.sh` 生成。 > 第一阶段 Compose 离线包由 `compose/package_offline.sh` 生成;本清单前半部分的 > Supervisor 文件继续作为既有单机兼容交付。 ## 核心文件 | 文件 | 说明 | |------|------| | `deploy_dataops.sh` | **一键部署入口**,复制代码、建 venv、配置 Supervisor | | `dataops.env` | 生产环境变量模板 → `/etc/dataops-platform/dataops.env` | | `.env.production.example` | 环境变量说明副本 | | `requirements.txt` | Python 依赖(pip install -r) | | `wsgi.py` | Gunicorn WSGI 入口 | | `gunicorn_config.py` | Gunicorn 配置(post_worker_init 初始化日志) | | `__init__.py` | 包入口(可选) | ## 应用代码 | 目录 | 说明 | |------|------| | `app/` | Flask 应用完整源码 | | `app/config/config.py` | 主配置(含生产默认连接、MinIO/LLM 回退) | | `app/core/llm/deepseek_client.py` | DeepSeek SDK 封装(base_url 规范化) | | `app/core/llm/llm_service.py` | LLM 翻译/SQL 生成 | | `app/core/llm/ddl_parser.py` | DDL 解析(HTTP `/v1/chat/completions`) | | `app/api/` | 全部 API 路由 | | `database/` | PostgreSQL SQL 脚本 | ## 运维脚本 | 脚本 | 说明 | |------|------| | `scripts/dataops-common.sh` | 公共配置、健康检查、Supervisor 配置 | | `scripts/run_dataops.sh` | Supervisor 调用,加载 env 启动 Gunicorn | | `scripts/start_dataops.sh` | 启动服务 | | `scripts/stop_dataops.sh` | 停止服务 | | `scripts/restart_dataops.sh` | 重启服务 | | `scripts/deploy_dataops.sh` | 已安装环境下的增量部署(可选) | | `scripts/edge_gateway_admin.py` | P3-WP04 边缘本地 init/CSR/注册材料/轮换/撤销状态/签名发布/回滚工具;私钥不出边缘 | ## 配置模板 | 文件 | 说明 | |------|------| | `config/nginx-dataops-platform.conf` | Nginx 反向代理(SSL、ddlparse 超时) | | `config/supervisor-dataops-platform.conf` | Supervisor 参考配置(deploy 脚本会自动生成) | ## 开发/打包工具 | 脚本 | 说明 | |------|------| | `sync_release.sh` | 从仓库根目录同步最新代码到 deployment/ | | `package_release.sh` | 打包 `dist/dataops-platform-release-YYYYMMDD.tar.gz` | | `compose/package_offline.sh` | 生成含默认镜像、版本清单和 SHA-256 的 Compose 离线包 | | `compose/product_engineering.py` | 环境、就绪、晋级、迁移、版本清单和 SBOM 控制面 | | `compose/reproducible_archive.py` | 生成规范时间戳、属主、权限和顺序的可复现归档 | ## WP13 Compose 运维 | 文件 | 说明 | |---|---| | `compose/preflight.sh` | 校验包、Compose、镜像和 Alembic current/head | | `compose/install_offline.sh` | 先验签、载入镜像、`--no-build` 启动和健康检查 | | `compose/backup.sh` | PostgreSQL 逻辑导出、维护窗口和全部托管卷冷快照 | | `compose/restore.sh` | 精确目标确认、同名拒绝、先验签和新项目恢复 | | `compose/rollback.sh` | 使用上一版离线包和升级前备份恢复候选项目 | | `compose/.env.rehearsal.example` | 隔离恢复演练的端口和网络模板 | | `environments/` | 开发、测试和预生产隔离配置及差异检查输入 | | `compose/README.md` | 离线交付、备份、恢复、回滚和企业门禁 | | `edge/` | P3-WP04 pull-only 边缘 Compose、无秘密 env 示例和工程部署契约 | | `edge/Dockerfile.edge` | P3-WP04 可运行的 pull-only Edge 镜像入口,无入站监听 | | `edge/edge.config.schema.json` | Edge 运行文件的闭合 JSON Schema;credential/signing keys/CRL 由只读文件注入 | ## 文档 | 文件 | 说明 | |------|------| | `README.md` | 快速开始 | | `DEPLOYMENT_GUIDE.md` | 完整部署手册 | | `CHECKLIST.md` | 部署检查清单 | | `MANIFEST.md` | 本文件 | | `docs/runbooks/EDGE_GATEWAY_OPERATIONS.md` | P3-WP04 安装、CSR、注册、轮换、撤销、升级、verified bundle 回滚与恢复步骤 | | `docs/phase3/P3_WP04_EDGE_GATEWAY.md` | P3-WP04 架构、数据边界和企业 UAT 边界 | | `docs/validation/P3_WP04_EDGE_GATEWAY_EVIDENCE.md` | P3-WP04 本地定向验证证据与剩余门禁 | | `docs/validation/P3_WP04_FAILURE_INJECTION.json` | 机器可读故障注入台账;企业项保持 `TBD_EXTERNAL` | | `docs/architecture/OPENAPI.yaml` | 完整 API 合同,含 Edge human bearer 与 machine mTLS 组合 | | `SHA256SUMS` | 发布归档内全部文件的 SHA-256 闭包(打包时生成) | ## 部署目标路径 | 源 | 目标 | |----|------| | `app/` | `/opt/dataops-platform/app/` | | `database/` | `/opt/dataops-platform/database/` | | `scripts/` | `/opt/dataops-platform/scripts/` | | `requirements.txt` 等 | `/opt/dataops-platform/` | | `dataops.env` | `/etc/dataops-platform/dataops.env` | ## 近期重要变更(2026-07) - 发布副本与 `app/`、`database/`、`migrations/` 完整同步并建立一致性测试 - 默认应用镜像使用稳定离线标签,全部对外端口支持恢复项目隔离覆盖 - Compose 离线包包含默认 profile 镜像、版本清单和全文件 SHA-256 - 备份恢复默认失败关闭、禁止同项目原位恢复、禁止数据库 downgrade - 开发/测试/预生产隔离配置、六类就绪监控、受控晋级和客户迁移 dry-run - 固定构建时间的可复现离线归档,以及 OpenAPI、SBOM、迁移和源码互相追溯 - P3-WP04 发布包包含与源码精确一致的边缘 admin/status 工具、可运行 pull-only Edge 镜像、闭合配置 schema、完整 OpenAPI、Failure Injection、运行手册、架构边界和验证证据;包内 `SHA256SUMS` 覆盖全部文件且打包前执行秘密形态扫描;工具与 Compose 统一 runtime UID/GID 和 `secrets/client.key` 路径,企业来源、网络和安全法务 UAT 仍为外部门禁 ## 历史重要变更(2026-05) - DeepSeek:`LLM_BASE_URL=https://api.deepseek.com`,模型默认 `deepseek-v4-pro` - `ddl_parser` 修正 API 路径为 `/v1/chat/completions` - MinIO 配置整组加载,避免 host/密钥混搭 - 翻译接口修复空结果回退逻辑 - 运维脚本统一 LF,env 权限 640 root:ubuntu - Gunicorn 日志绝对路径 `LOG_FILE`