jenkins实现CI/CD

Posted rage_angel

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins实现CI/CD相关的知识,希望对你有一定的参考价值。

名词解释

CI:Continuous Integration,持续集成

CD:Continuous Delivery,持续交付


1、CI

持续集成实现过程:

  • 安装jenkins。我们的jenkins是在docker里面起的一个镜像,当然也可以自己到官网上下载相应的安装包。
  • push代码到码云(https://gitee.com)
  • 根据webhooks配置的url,给远程HTTP URL发送一个POST请求
    • webhooks配置:http://Admin:a802c1c************a9@jenkins.******.***/job/yourjobname/build?token=java-token
      • web hook结构:http://用户名:API Token@jenkins域名:端口号/job/项目名/build?token=java-token
      • API Token:Jenkins--》用户--》设置--》API Token--》show API Token…
  • jenkins里面拉去最新的代码
  • jenkins里安装插件Generic Webhook Trigger Plugin,触发jenkins重新构建相应的job
    • gradle 重新构建,tasks:gradle clean build,需要安装插件Gradle Plugin
    • 构建完成之后重新build新镜像并推至docker镜像库
    • docker login -u user -p $DOCKERHUB_PASSWORD https://hub.docker.xxxx.cn:xxxx
      docker build -t xxxxx .
      docker push xxxxx
    • docker login 的时候,为了保密性,可以使用mask passwords。mask passwords

2、CD

持续部署的实现过程:

新的镜像推送成功之后,在rancher里面重新拉取新的镜像并更新。

安装插件:rancher plugin

项目构建时会有:Deploy/Upgrade Rancher service

配置相关信息,就会触发rancher重新更新镜像。

获取API key的时候需要Environment API key ,用Account API key不起作用。



以上是关于jenkins实现CI/CD的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins + Gitlab + harbor + Kubernetes实现CI/CD

Jenkins + Gitlab + harbor + Kubernetes实现CI/CD

devops学习笔记-jenkins实现基础CI/CD操作

还在用Jenkins?试试Gitlab的CI/CD功能吧

还在用Jenkins?试试Gitlab的CI/CD功能吧

CI/CD技术专题「Jenkins实战系列」Jenkins实现自动化部署+自动化合并其他分支