# 预生产 Harbor 镜像 → ACK(仅晋升,不构建) Harbor:**39.105.153.68**(`alien_cloud`)。Jenkins:**39.106.135.88:30003**。ACK:**alien-ack-cluster**。 与 `__alone/Jenkinsfile-prod-promote-from-uat.groovy`(拷 jar + compose)并列;本目录只做: ```text docker pull 39.105.153.68/alien_cloud/<服务>: docker tag → : docker push kubectl set image(可选) ``` **不** Checkout 业务代码、**不** Maven、**不** docker build。 --- ## Jenkins Job 与 Script Path | 建议 Job 名 | Script Path | 粒度 | |-------------|-------------|------| | `gateway-k8s` | `docs/jenkins/produ/gateway/Jenkinsfile` | 单服务 | | `store-k8s` | `docs/jenkins/produ/store/Jenkinsfile` | 单服务 | | … | `produ//Jenkinsfile` | … | | `alien-cloud-k8s-whole` | `docs/jenkins/produ/whole/Jenkinsfile` | whole/single/multi(界面见 [README-JOB-WHOLE.md](./README-JOB-WHOLE.md)) | | `alien-cloud-k8s-promote-image` | `docs/jenkins/produ/promote-image/Jenkinsfile` | 同 whole | ### Pipeline from SCM 配置 | 项 | 值 | |----|-----| | 定义 | Pipeline script from SCM | | 仓库 | `http://8.152.195.41:3000/alien/alien_cloud` | | 分支 | 预生产分支,如 `*/uat-20260202` | | **SCM Credentials** | **Git**(`zhanghaomimapingzheng` 或 `dujian/****** (git)`) | ### SCM Credentials ≠ Harbor 机器人 | 位置 | 选什么 | 不要选 | |------|--------|--------| | **Repository URL 旁 Credentials** | Git 账号 | `robot$alien_cloud+jenkins-k8s` | | Jenkins 凭据库 **`harbor-robot-alien`** | 用户名 `robot$alien_cloud+jenkins-k8s`,密码=Token | — | | Jenkins 凭据库 **`ack-kubeconfig-alien`** | ACK kubeconfig 文件 | — | Harbor 机器人只用于流水线里的 `docker login`,不是拉 Git 的 Jenkinsfile。 --- ## 参数说明(单服务 Job) | 参数 | 说明 | |------|------| | `SOURCE_TAG` | 预生产已在 Harbor 的 tag,如 `uat-build-42` | | `TARGET_TAG` | 生产 tag,默认 `produ-${BUILD_NUMBER}` | | `DEPLOY_STRATEGY` | `rolling` / `canary` / **`skip`**(只推镜像) | | `HARBOR_REGISTRY` | `39.105.153.68` | 整体 Job 另增 `DEPLOY_MODE`:`whole` / `single` / `multi`(同 prod-promote)。 --- ## 预生产镜像从哪来? 88 上 UAT 构建后需有一次把镜像推到 Harbor,例如: `39.105.153.68/alien_cloud/gateway:uat-build-42` 之后本目录流水线只做 **tag 晋升**。 详见 [README-HARBOR-SETUP.md](./README-HARBOR-SETUP.md)、[README-PROMOTE-IMAGE.md](./README-PROMOTE-IMAGE.md)、[README-ACK-GRAY-RELEASE.md](./README-ACK-GRAY-RELEASE.md)。 --- ## 目录结构 ```text docs/jenkins/produ/ ├── __alone/ # 参考:jar 晋升 compose(勿删) ├── _shared/ │ ├── k8s-produ-lib.groovy │ └── service-registry.groovy ├── gateway/Jenkinsfile # 单服务 ├── store/ … dining/ ├── whole/Jenkinsfile # 整体/多选 ├── promote-image/Jenkinsfile # 同 whole └── k8s/examples/ # ACK 清单示例 ```