配置 Docker 集群
Translation in progressThis guide is currently available in Simplified Chinese. A translated version will be added later.
Docker Cluster 表示一组由 Spark 通过 SSH 管理的 Docker 主机。它不需要 kubeconfig;实际部署目标由 Docker Host Group 决定。
1. 注册 Docker 集群
进入 Cluster Management → Registered Clusters,点击 +:
- 填写 Cluster Name 和 Cluster Code。
- Cluster Type 选择 Docker。
- 选择 Environment。
- 保存后进入该集群的 Docker Runtime。
images/spark-pipeline-docker-register-01.webp2. 添加 Docker Host
在 Docker Hosts 中添加主机:
- Host Name:便于识别的名称
- SSH Host、Port、User
- SSH Private Key Secret
- 可选 Bastion Host
先执行 Test Connection,确认 SSH 可连接且目标用户能够执行 Docker 命令,再保存。
images/spark-pipeline-docker-host-02.webp3. 创建 Host Group
Host Group 是 App Environment 选择的部署目标。一个组可以包含一台或多台主机:
- 创建 Group 并选择成员主机。
- 按需要设置默认组。
- 确认每台主机开放应用将使用的 Host Port。
批量部署时,App 的 Deploy Batch Size 和 Failure Policy 决定一次处理多少台主机以及失败后是否继续。
4. 创建 Run Template
Run Template 负责把应用配置渲染为 Docker 启动、停止和健康检查命令。模板可以限制语言和 Build Mode:
- LOCAL_BUILD:在选定 Builder Host 上拉取源码并执行
docker build,不要求 Registry。 - REGISTRY_PULL:构建后推送到 Registry,各目标主机拉取同一镜像;需要 Docker Registry 配置。
为 Java、Python、Node.js 分别准备模板时,应使模板的容器端口、运行参数和应用实际启动方式一致。
images/spark-pipeline-docker-template-03.webp5. 配置 Docker Registry
只有 REGISTRY_PULL 必须配置 Registry:
- 在 Secret Management 创建 Harbor 类型 Secret。
- 在 Docker Runtime 的 Docker Registry 填写 Registry Address。
- 选择 Secret 并保存。
LOCAL_BUILD 可不配置 Registry。它适合单机或小规模环境;多主机生产环境通常使用 REGISTRY_PULL,保证所有主机拉取同一不可变镜像标记。
6. 完成检查
- 至少一台 Docker Host 已通过连接测试。
- 已创建包含可用主机的 Host Group。
- 已创建与 App Language 和 Build Mode 兼容的 Run Template。
REGISTRY_PULL时 Registry 和凭据已配置。- 目标 Host Port 未被其他容器或进程占用。
- Docker 主机能访问 Git 仓库、镜像 Registry 和应用依赖源。
下一步进入创建 App 与关联 Repository。