jenkins快速入门,自动构建一个hello world项目(devops,ci/cd)

共 1506字,需浏览 4分钟

 ·

2020-07-03 23:29


2888f513c2979d1fb43117553c3b1bf9.webp

jenkins是一个非常老牌的ci/cd工具,它是一款使用Java写的开源自动化应用。可以通过界面或Jenkinsfile告诉它执行什么任务,何时执行,理论上,可以让它执行任何事,一般用来做ci/cd(开发只用关心代码实现,提交代码以后自动测试、打包、自动发布)可以说体量稍微大一点的团队都有自己的持续集成工具。

安装

5076d9407c4fef2d329ef983c3d71dac.webp

我使用的是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

安装方法非常简单,其他安装方法以及安装完怎么配置见官网文档, 因为官方网站速度比较慢,可以先不安装插件后期改完镜像源再安装。

更新镜像源

d4ed2b73c6f15544bb0b90d884f853ec.webp

进入 Manage Jenkins > Manage Plugins > Advanced,在这里可以手动上传插件包,也可以更新其他镜像源,然后Submit,再点击右下角Check now

52b42bf83b76ada156684fe736cb0e39.webp

附:清华大学镜像源 https://mirror.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

PS:我用了镜像源还是卡慢,网上找遍了也没找到好的办法,最后还是翻出去下的。

安装插件

还是在此页面,仅安装pipeline插件,这个插件就是构建用的核心插件,jenkins会自动解决安装插件时的依赖问题,安装完重启jenkins

创建项目

1、 左上角New item按钮 2、 输入项目名,选择流水线,提交

da030ba7c9040ca0a5f19336f048db9f.webp流水线

3、直接拉到下面,填入以下内容然后保存

a3bf4e08238d642df69885a5ed5413c1.webp
pipeline {
    agent any

    stages {
        stage('build') {
            steps {
                echo 'hello world!'
            }
        }
    }
}

代码解释:

  • jenkins使用的是Groovy这种编程语言,常用的是声明式语法
  • 上面代码中pipeline实际上是一个函数,只是省略了小括号pipeline({}),中间是传入参数,大括号包着的是一个匿名的函数(闭包),这个函数里面的内容就是函数体,又调用了agent函数和stages函数
  • stages函数传入的是stage函数列表表示不同的构建阶段,此处只有build阶段
  • steps又表示不同的步骤

4、在项目详情页面立即构建

55256907abd2275e5bf4a0e24d0b76aa.webp

5、可以点击#1查看刚刚的构建

d7af343b01e0e28f65f26e30b81b620a.webp

6、点这里可以看到输出历史

f85d521157a29aba650c6c7afa58f09d.webp

界面重点功能介绍

d9cbce817c16118af316dcee9679c33f.webp

总结

  • 官网文档安装 jenkins https://www.jenkins.io/zh/doc/book
  • 安装插件位置 Manage Jenkins > Manage Plugins
  • 初始安装pipeline插件即可
  • 整个构建流程:获取源代码(凭据、github 等接入源、用户权限、绑定触发动作)-根据pipeline描述步骤开始测试、构建、发布以及构建成功与否的通知

最后尽量还是自己动动手试一下,才能更好的学会这个东西。

浏览 38
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报