Jenkins部署与使用

CI/CD介绍

持续集成(Continuous Integration,CI)和持续发布(Continuous Delivery,CD,又称持续交付)是经常放在一起提及的两个概念,专有词组CI/CD Pipeline 用来描述他们同时存在的持续集成与发布自动化管线。
持续集成是一种编程实践,它让开发团队通过实现对代码一系列小的改动,高频率地提交到版本管理源。这种稳定一致并可以反复执行的流程,让开发人员可以更加频繁地提交改动,从而提升合作效率和代码质量。通过持续集成,团队可以快速的从一个功能到另一个功能,简而言之,敏捷软件开发很大一部分都要归功于持续集成。

持续发布是在持续集成之后的一系列动作。持续发布自动化交付生成的产品到各个目标环境,如测试环境、审查环境和生产环境等,以用于不同的目的。持续发布可以保证各种修改以一种稳定、符合预期的方式交付到这些环境上。在发布的过程中,除了把持续集成的最终产物复制到目标环境外,持续交付通常还会跟外部的Web API、数据库和其他服务通信,让新的改动最终在目标环境生效。

持续集成需要一个持续集成服务器, Jenkins 就是一个配置简单和使用方便的持续集成服务器。依赖于Java开发的,由各种组件组成的一个自动化部署工具。

Jenkins实战案例

准备
192.168.70.35 jenkins服务器 (Jenkins、JDK、MAVEN、GIT)
192.168.70.36 gitlab服务器 (Gitlab) 这条gitlab机器至少需要4G内存!
192.168.70.37 测试服务器 (JDK)

部署jenkins

1.下载jdk11 和 git

yum list | grep jdk  //查看是否有java-11-openjdk.x86_64  有的话安装 没优则需要更新yum源

yum install java-11-openjdk.x86_64  -y

yum install git -y

2.下载maven maven 官网下载地址3.8.8

//下载好传到虚拟机上
tar -zxvf apache-maven-3.8.8-bin.tar.gz -C /usr/local

//修改maven下载源
vim /usr/local/maven/conf/settings.xml  //找到mirrors 把其中的mirro注释 添加如下阿里源
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>

3.下载jenkins.war包 这里我安装的是2.361.1版本 最好安装2.36以上版本 旧版本有时jenkins插件安装不了或者启动不了!

官网下载地址:https://mirrors.jenkins.io/war-stable

//下载好jenkins后上传到机器上 使用下面命令就可以打开jenkins了 需要构建一会
java -jar jenkins.war

4.修改源

//将 https://updates.jenkins.io/download 改为 http://mirrors.tuna.tsinghua.edu.cn/jenkins
//将 https://www.google.com 改为 https://www.baidu.com

[root@localhost ~]# find / -name *.UpdateCenter.xml
/root/.jenkins/hudson.model.UpdateCenter.xml
[root@localhost ~]# vim /root/.jenkins/hudson.model.UpdateCenter.xml
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>  --将此链接替换为清华源,这是更换后效果
  </site>
</sites>

//更换完保存退出

5.修改插件源

//构建完后可以页面登录jenkins(ip+8080) 根据页面提示 查看密码 
cat /root/.jenkins/secrets/initialAdminPassword
f53dad9bac4243ff9fdb6ef19278dbcb

//接着点击选择插件来安装
//此时需要更换插件源 
//将 https://updates.jenkins.io/download 改为 http://mirrors.tuna.tsinghua.edu.cn/jenkins
//将 https://www.google.com 改为 https://www.baidu.com

[root@localhost updates]# cd /root/.jenkins/updates/
[root@localhost updates]# ll
总用量 2664
-rw-r--r--. 1 root root 2719057 10月 12 21:47 default.json
-rw-r--r--. 1 root root    6178 10月 12 21:30 hudson.tasks.Maven.MavenInstaller
[root@localhost updates]# sed -i 's/https:\/\/updates.jenkins.io\/download/http:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' /root/.jenkins/updates/default.json
[root@localhost updates]# sed -i 's/https:\/\/www.google.com/https:\/\/www.baidu.com/g' /root/.jenkins/updates/default.json

//然后点击左上角无 先不安装插件

6.创建用户

创建一个管理员用户 > 保存并完成 > 开始使用 > 用刚所创建的用户进行登录

7.安装插件

点击Manage Jenkins >Plugin Manager > Available 搜索maven 勾选 > install without restart 同理安装git

8.new item > 填文件名 > 构建一个maven项目 > 确定

部署gitlab

1.下载

gitlab官网下载 这里下载的版本是最新的16.2.4

2.安装所需要的依赖

yum install curl policycoreutils openssh-server openssh-clients -y

systemctl enable sshd  //开机自启动ssh程序

systemctl start sshd

yum install postfix  //安装邮件程序

systemctl enable postfix

systemctl start postfix

systemctl stop firewalld  //关闭防火墙

systemctl disable firewalld  

3.安装gitlab

//配置完相关依赖后我们安装下载好的安装包 
//把安装包上传到虚拟机上
cp gitlab-ce-16.2.4-ce.0.el7.x86_64.rpm /gitlab/

cd /gitlab

yum install gitlab-ce-16.2.4-ce.0.el7.x86_64.rpm —y

gitlab-ctl reconfigure  //需要等待几分钟

4.登录

在上一步reconfigure之后会生成一个随机密码
cat /etc/gitlab/initial_root_password  //查看随机密码

在浏览器输入服务器ip 来到gitlab登录页面,账号root,免密就是上述随机密码

5.修改密码:

切换中文设置

6.新建项目

复制gitlab http > 去jenkins找到刚创建的maven项目 > Configuration > Source Code Management > 选择git > 粘贴url(http://192.168.70.36/root/demo.git) >

自动发布、测试运行

1.安装插件

Publish Over SSH

Git

2.设置系统设置

3.设置全局配置

4.创建项目

clean packge -Dmaven.test.skip=true 解释:

  1. 清理上一次的构建结果
  2. 编译项目源代码并打包成发布包(如jar文件),但不运行测试代码
  3. -Dmaven.test.skip=true参数跳过了测试阶

热门相关:落地一把98K   豪门情变,渣总裁滚远点!   大妆   三人组:我妻子的朋友   不科学御兽