jenkins 触发 Rancher实现自动部署 流水线一键操作

IDEA 修改代码 提交 gogs 自动触发 jenkins 流水线打包构建、

2. jenkins 构建完成以后触发 Rancher 自动部署

  • 2.1 创建服务并启动: 不配置端口映射通过负载均衡实现动态扩容
    在这里插入图片描述

2.2 加密的私有仓库拉取镜像失败,需要添加仓库 账户密码信息

Failed to allocate instance [container:1i119]: Bad instance [container:1i119] in state [error]: Error response from daemon: Get "http://192.168.220.132:5000/v2/": net/http: HTTP/1.x transport connection broken: malformed HTTP response "\x15\x03\x01\x00\x02\x02"

架构基础====>> 镜像库====>>> 添加镜像
在这里插入图片描述
在这里插入图片描述

  • 2.3 配置负载均衡
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 2.4 增加容器数量实现动态扩容
    在这里插入图片描述

  • 2.5 配置 rancher 的webhooks 复制 rancher 的webhooks
    API====>> Webhooks ====>>添加接收器
    在这里插入图片描述
    在这里插入图片描述
  • 2.5.1 复制触发地址
http://192.168.220.132:9090/v1-webhooks/endpoint?key=Wsv0O7MAQcArkQC7yp6bEkUbdBsshnrSEyfeMoSn&projectId=1a5
  • 2.5.2 postMan 模拟触发
  • 2.5.2.1 1.0-SNAPSHOT:镜像的版本号(TAG)
  • 2.5.2.2 1192.168.220.132:5000/com.xiaoming/wang:仓库地址/镜像名
http://192.168.220.132:9090/v1-webhooks/endpoint?key=Wsv0O7MAQcArkQC7yp6bEkUbdBsshnrSEyfeMoSn&projectId=1a5
参数:
 {
    
    
 	"push_data": {
    
    
        "tag": "1.0-SNAPSHOT"
    },
    "repository": {
    
    
        "repo_name": "192.168.220.132:5000/com.xiaoming/wang"
    }
 }

3. 配置jenkins 流水线自动触发 打包升级服务

  • 3.1 项目流水线 ====> 配置 =====> prestep ===> shell 脚本触发
curl "http://192.168.220.132:9090/v1-webhooks/endpoint?key=Wsv0O7MAQcArkQC7yp6bEkUbdBsshnrSEyfeMoSn&projectId=1a5" \
    -H "Content-Type:application/json" \
    -d "{\"push_data\": {\"tag\": \"1.0-SNAPSHOT\"},\"repository\": {\"repo_name\": \"192.168.220.132:5000/com.xiaoming/wang\"}}"

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 3.2 调用url 出rancher 自动部署

成功;

  • 3.3 IDEA 提交代码 ===>> 触发 jenkins 流水线 ====> jenkins 流水线执行 成功 触发rancher 升级

提交代码:

在这里插入图片描述

自动触发构建:

在这里插入图片描述

自动触发Rancher 升级镜像

在这里插入图片描述

Guess you like

Origin blog.csdn.net/qq_16183731/article/details/121452871