配置部署环境
翻訳準備中このガイドは現在、簡体字中国語版のみ提供しています。翻訳版は今後追加されます。
打开 App 详情,点击 Deployment。部署环境是 Pipeline、发布分支、部署配置和发布历史的共同作用域;不要用一个环境名称代替多套实际目标。
1. 创建环境并绑定目标
填写:
| 字段 | 说明 |
|---|---|
| Environment Code | 稳定代码,例如 dev、test、prod |
| Environment Name | 用户可读名称 |
| Environment Type | DEV、TEST、STAGING、PROD |
| Default Environment | App 默认打开的环境 |
| Cluster | 已注册且未删除的 K8S 或 Docker Cluster |
| Namespace | K8S 环境从 Allowed Namespaces 选择 |
| Docker Host Group | Docker 环境选择 Host Group |
images/spark-pipeline-environment-create-01.webp保存环境后点击 Configure 进入具体部署配置。只创建环境记录而未保存部署配置,Pipeline 仍会判定目标未就绪。
2. K8S 部署配置
K8S 配置按以下顺序填写,先完成必需项,再增加高级能力。
Target 与 Template
- 检查 Cluster、Namespace 与 Environment。
- 选择与 Language 兼容的 Deployment Template。
Workload 与 Build
- Replicas 和 Release Batches
- Container Name
- Dockerfile Path 和 Image Repository
- 可选 Entrypoint Override 与 CMD Arguments
- Java/Python/Node.js builder image 通常继承 Cluster Harbor Config;只有特殊应用才覆盖
Network 与 Health
- Container Port、Service Port、可选 Node Port
- Domain Prefix、Domain Suffix、HTTPS
- Startup、Liveness、Readiness Probe Path 与 Port
Resources 与 Runtime
- CPU Request/Limit、Memory Request/Limit
- Runtime Environment Variables
- Volume、Scheduling Policy、Monitoring、Remote Debug
- Java 配置文件可选择 Branch、Config Path 并保存配置内容快照
images/spark-pipeline-environment-k8s-02.webp健康检查路径必须由应用真实提供。Spark Console 使用 /health/startup、/health/liveness、/health/readiness;Pulse Force Server 示例使用 /health。不要为了通过表单校验填写一个不存在的 URL。
3. Node.js 专属配置
Repository Language 为 Node.js 时显示:
| 字段 | 可选值 | 用途 |
|---|---|---|
| Release Mode | Container Image / Static Artifact | 生成容器镜像或静态产物 |
| Build Mode | Dockerfile / NPM | 使用仓库 Dockerfile,或由 Spark 管理包构建 |
| Package Manager | NPM / Yarn / PNPM | Managed NPM Build 使用 |
| Frontend Build Path | 仓库相对路径 | package.json 所在模块 |
| Frontend Output Path | 模块相对路径 | 构建产物目录 |
| Env Config File Path | 仓库相对路径 | 构建前使用的环境文件 |
| Nginx Config | 文本 | Container Image + NPM 模式的运行配置 |
使用 Pipeline 部署 K8S 时选择 Container Image。Static Artifact 当前不能配置 K8S Deploy 阶段。
4. Docker 部署配置
Docker 环境主要字段:
- Host Group、Build Mode、可选 Builder Host
- Dockerfile Path、Build Context、Image Repository
- 与 Language/Build Mode 兼容的 Run Template
- Container Name、Restart Policy
- Container Port、Host Port、Access URL、Health Path
- Runtime Environment Variables、Volumes
- Deploy Batch Size、Failure Policy
- Java 配置文件的 Branch、Config Path 与内容快照
images/spark-pipeline-environment-docker-03.webpLOCAL_BUILD 在 Builder Host 本地生成镜像;REGISTRY_PULL 使用 Registry 分发镜像。后者适合多主机,并要求 Cluster Docker Registry 已配置。
5. 环境设计建议
- DEV、TEST、PROD 使用不同环境记录,最好绑定与环境等级匹配的 Cluster。
- 同一 App 在 K8S 和 Docker 上运行时,也建立两个环境,例如
prod与docker-eu。 - PROD 使用明确的资源限制、健康检查和人工 Test Gate。
- 环境变量只保存非敏感配置。密码、Token、私钥应通过 Secret 或运行时 Secret 能力注入。
- 删除环境会删除 Spark 保存的部署配置、Pipeline 和历史,但不会自动删除实际 K8S/Docker 资源;删除前先制定运行时清理计划。
6. 保存后的检查
- 环境列表显示目标 Cluster 和 Namespace/Host Group。
- 点击 Configure 能重新加载刚保存的值。
- Dockerfile 位于 Build Context 中。
- Image Repository 是相对于 Registry 的仓库名,或合法的完整 repository。
- 容器端口与程序监听端口一致。
- K8S Template 或 Docker Run Template 与语言匹配。
完成后进入配置并运行 Pipeline。