jenkins是一个非常老牌的ci/cd工具,它是一款使用Java写的开源自动化应用。可以通过界面或Jenkinsfile告诉它执行什么任务,何时执行,理论上,可以让它执行任何事,一般用来做ci/cd(开发只用关心代码实现,提交代码以后自动测试、打包、自动发布)可以说体量稍微大一点的团队都有自己的持续集成工具。
安装
我使用的是docker安装测试,其中~/Documents/code/jenkins/这个目录需要替换成你自己的,因为把目录挂载了出来,所以即使容器销毁也不会导致数据丢失。
mkdir jenkins-data docker run \ -u root \ --name jenkins \ -d \ -p 8080:8080 \ -p 50000:50000 \ -v ~/Documents/code/jenkins/jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ jenkinsci/blueocean
安装方法非常简单,其他安装方法以及安装完怎么配置见官网文档, 因为官方网站速度比较慢,可以先不安装插件后期改完镜像源再安装。
更新镜像源
进入 Manage Jenkins > Manage Plugins > Advanced,在这里可以手动上传插件包,也可以更新其他镜像源,然后Submit,再点击右下角Check now
附:清华大学镜像源
https://mirror.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
PS:我用了镜像源还是卡慢,网上找遍了也没找到好的办法,最后还是翻出去下的。
安装插件
还是在此页面,仅安装pipeline插件,这个插件就是构建用的核心插件,jenkins会自动解决安装插件时的依赖问题,安装完重启jenkins
创建项目
1、 左上角 New item 按钮
2、 输入项目名,选择流水线,提交
3、直接拉到下面,填入以下内容然后保存
pipeline { agent any stages { stage('build') { steps { echo 'hello world!' } } } }
代码解释:
jenkins使用的是Groovy这种编程语言,常用的是声明式语法
上面代码中pipeline实际上是一个函数,只是省略了小括号pipeline({}),中间是传入参数,大括号包着的是一个匿名的函数(闭包),这个函数里面的内容就是函数体,又调用了agent函数和stages函数
stages函数传入的是stage函数列表表示不同的构建阶段,此处只有build阶段
steps又表示不同的步骤
4、在项目详情页面立即构建
5、可以点击#1
查看刚刚的构建
6、点这里可以看到输出历史
界面重点功能介绍
总结
官网文档安装 jenkins
安装插件位置 Manage Jenkins > Manage Plugins
初始安装pipeline插件即可
整个构建流程:获取源代码(凭据、github 等接入源、用户权限、绑定触发动作)-根据pipeline描述步骤开始测试、构建、发布以及构建成功与否的通知
最后尽量还是自己动动手试一下,才能更好的学会这个东西。