Jenkins构建CI/CD

什么是CI/CD:持续集成/持续发布---开发(git) -->git主库-->jenkins(git+jdk+tomcat+maven打包+测试)-->发布到tomcat服务器。

持续集成(Continuous Integration, CI): 代码合并,构建,部署,测试都在一起,不断地执行这个过程,并对结果反馈。

持续部署(Continuous Deployment, CD): 部署到测试环境、预生产环境/灰度环境、生产环境。 

持续交付(Continuous Delivery, CD): 将最终产品发布到生产环境、给用户使用。

jenkins介绍

Jenkins是帮我们将代码进行统一的编译打包、还可以放到tomcat容器中进行发布。 我们通过配置,将以前:编译、打包、上传、部署到Tomcat中的过程交由Jenkins,Jenkins通过给定的代码地址URL(代码仓库地址),将代码拉取到其“宿主服务器”(Jenkins的安装位置),进行编译、打包和发布到Tomcat容器中。

工作流程图

1.开发者会将代码上传到版本库中。

2.jenkins通过配置版本库的连接地址,获取到源代码。

3.jenkins获取到源代码之后通过参数化构建(或者触发器)开始编译打包。

4.jenkins通过调用maven(Ant或者Gradle)命令实现编译打包过程。

5.生成的war包通过ssh插件上传到远程tomcat服务器中通过shell脚本自动发布项目。

在jenkins服务器:192.168.197.143 配置jdk和maven

下载jdk或者自己上传包 Java Downloads | Oracle

Maven下载 https://downloads.apache.org/maven/maven-3/

wget https://downloads.apache.org/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz

tar -xvzf apache-maven-3.8.8-bin.tar.gz

tar zxvf jdk-8u121-linux-x64.tar.gz

mv jdk1.8.0_121/ java

mv apache-maven-3.8.8/    maven     &&  mv  maven  java/

mv java/ /usr/local/

配置环境变量: vim /etc/profile

JAVA_HOME=/usr/local/java

MAVEN_HOME=/usr/local/java/maven

PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL JAVA_HOME MAVEN_HOME

source /etc/profile 刷新配置

java -version 验证一下

mvn -v

jenkins服务rpm包下载地址Redhat Jenkins Packages

选择jenkins对需要的版本,复制链接地址或者直接点击下载都可以

wget https://get.jenkins.io/redhat/jenkins-2.361-1.1.noarch.rpm --no-check-certificate

yum install epel-release java-11-openjdk-devel -y

rpm -ivh jenkins-2.361-1.1.noarch.rpm rpm安装或者yum安装都可以

yum -y install jenkins-2.361-1.1.noarch.rpm

systemctl daemon-reload

systemctl start jenkins 启动jenkins

systemctl status jenkins 查看一下jenkins的状态

第一次访问一个新的 Jenkins 实例时,系统会要求您使用自动生成的密码将其解锁

浏览到`http://192.168.197.141:8080`并等待**解锁 Jenkins**页面出现

来到服务器查看一下初始密码

cat /var/lib/jenkins/secrets/initialAdminPassword

复制到web页面即可 登录即可

安装插件需要等一会,安装失败大部分原因都是网络问题。

到这一步部署基本完成了。

部署完成后,jenkins需要安装一些需要使用的插件

Deploy to container ---支持自动化代码部署到tomcat容器

GIT plugin 可能已经安装,可在已安装列表中查询出来

Maven Integration jenkins利用Maven编译,打包所需插件

Publish Over SSH 通过ssh连接

注意是搜索一个下载一个 不是批量下载的

插件安装完以后配置一下远程的ssh-server(后端服务器)

配置jenkins服务器的私钥

ssh-keygen 生成秘钥

cat /root/.ssh/id_rsa 查看服务器的私钥然后复制过来

然后将公钥发送到后端服务器(是需要构建项目发布的服务器)做免密登录

ssh-copy-id -i tom@192.168.197.136

如果有多个后端服务器,可以点击 ADD server进行添加;

配置完后端用户后,配置JDK和Maven

虽然Jenkins服务器上,已经安装了JDK和maven工具,但是,还需要在Jenkins服务中,进行配置;这样Jenkins才能自动化的使用两个工具;

配置jdk

配置maven

jenkins部署安装和配置已经完成,可以进行项目构建了

构建项目文档另起一篇进行编辑请看文档二

Jenkins构建项目和tomcat项目发布脚编写本详细教程jenkins 2.361版本_争取不加班!的博客-CSDN博客

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐