jenkins实现CI/CD

来源:互联网 发布:淘宝男鞋代理 编辑:程序博客网 时间:2024/05/18 01:13

名词解释

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不起作用。