Bootstrap

Rancher2.7 + Jenkins CI/CD全流程保姆级最佳实践

Rancher + Jenkins k8s集群 CI/CD全流程最佳实践

CI方面,官方推荐的视频教程等多是使用极狐Gitlab CI,但社区版极狐每月仅400分钟构造时间,额外购买价格为1000分钟/68元,而私有化部署极狐Gitlab对比部署使用Jenkins,具有更高的成本、更狭窄的适用面,且如果个人使用其代码仓库功能,并不比Gitee可靠。

Gitee 同样提供CI服务,但相比极狐Gitlab更加抠门,只对新用户提供200分钟的构建时长。

CD方面,官方推荐使用内置的Fleet,但其模型和文档比较晦涩,而直接使用Jenkins脚本调取Rancher Server的API更为方便,故采取的解决方案为后者。

基于以下流程的结果,相信你将不难实现一个初步的Git Ops工作流。

需要:

  • Jenkins(仅测试过非docker部署版本)
  • Rancher2.7.3、非local的自定义RKE(k8s)集群
  • 阿里云私有镜像仓库(服务器与仓库在同一地域时可以用内网连接,即vpc.cn-前缀的链接)

Jenkins

  • 安装Jenkins
  • 安装jdk
  • 安装maven
  • 将jenkins加入系统docker权限组

新建任务

在这里插入图片描述

在这里插入图片描述

流水线一般配置项:

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

Gitee仓库设置

Gitee WebHook 密码

点击生成,复制字串到仓库管理,并设置如下:

在这里插入图片描述

流水线脚本

pipeline {
   
    agent any

    tools {
   
        // Install the Maven version configured as "M3" and add it to the path.
;