diff --git a/suite-developer/knowledge/data-execution-model.md b/suite-developer/knowledge/data-execution-model.md index e68a46c..263cacf 100644 --- a/suite-developer/knowledge/data-execution-model.md +++ b/suite-developer/knowledge/data-execution-model.md @@ -14,7 +14,12 @@ │ gis-actions(本地执行器) │ │ ┌─────────────────────────────────────────┐ │ │ │ │ │ -│ │ docker run --rm gis-base + 套件脚本 │ │ +│ │ docker run --rm --tmpfs /dev/shm gis-base + 加密套件脚本 +│ ┌────────────────────────────────────────┐ +│ │ decrypt_runner.py → AES-256 解密 │ +│ │ → /dev/shm(内存文件系统) │ +│ │ → exec() 执行 │ +│ │ → 容器销毁 → /dev/shm 自动清空 │ │ │ │ │ ┌────────────────────────────────┐ │ │ │ │ │ /data/input.shp(只读挂载) │ │ │ │ │ │ /tmp/output/(写入挂载) │ │ │ @@ -39,7 +44,8 @@ |------|---------|------| | 用户数据文件(SHP/GeoJSON/TIFF...) | ❌ **不上传** | 始终在用户本地 | | 执行结果 | ❌ **不上传** | 留在用户的输出目录 | -| 套件脚本包 | ✅ 下载到本地 | 从市场拉取执行脚本 | +| 套件脚本包(加密) | ✅ 下载到本地 | `.py.enc` AES-256 加密,运行时在容器内解密 | +| 套件解密密钥 | ❌ 不在脚本包中 | 内置在 gis-base 镜像,用户无法提取 | | 基础镜像 | ✅ 拉取一次 | gis-base 镜像缓存在本地 Docker | | 任务参数(文件路径、数值) | ❌ **不上传** | 仅在本地传递,不经过网络 |