跳至主要内容

配置部署环境

翻譯正在進行中本指南目前僅提供簡體中文版本,其他語言版本將在後續補充。

打开 App 详情,点击 Deployment。部署环境是 Pipeline、发布分支、部署配置和发布历史的共同作用域;不要用一个环境名称代替多套实际目标。

1. 创建环境并绑定目标​

填写:

字段说明
Environment Code稳定代码,例如 dev、test、prod
Environment Name用户可读名称
Environment TypeDEV、TEST、STAGING、PROD
Default EnvironmentApp 默认打开的环境
Cluster已注册且未删除的 K8S 或 Docker Cluster
NamespaceK8S 环境从 Allowed Namespaces 选择
Docker Host GroupDocker 环境选择 Host Group
创建 App Deployment Environment展示环境代码、类型、默认环境、K8S namespace 或 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 并保存配置内容快照
K8S Deployment Configuration展示 Template、Workload、Build、Network、Health、Resources、Runtime Env 和 Operations 分区。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 ModeContainer Image / Static Artifact生成容器镜像或静态产物
Build ModeDockerfile / NPM使用仓库 Dockerfile,或由 Spark 管理包构建
Package ManagerNPM / Yarn / PNPMManaged 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 与内容快照
Docker Deployment Configuration展示 Host Group、Local Build/Registry Pull、Run Template、端口、健康检查、变量、卷和发布策略。images/spark-pipeline-environment-docker-03.webp
截图待补充

LOCAL_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。