8.2 总结(Jenkins总结)
在实际开发中,我们经常要一边开发一边测试,当然这里说的测试并不是程序员对自己代码的单元测试,而是同组程序员将代码提交后,由测试人员测试;
或者前后端分离后,经常会修改接口,然后重新部署;
这些情况都会涉及到频繁的打包部署;
手动打包常规步骤:
1.提交代码
2.问一下同组小伙伴有没有要提交的代码
3.拉取代码并打包(war包,或者jar包)
4.上传到Linux服务器
5.查看当前程序是否在运行
6.关闭当前程序
7.启动新的jar包
8.观察日志看是否启动成功
9.如果有同事说,自己还有代码没有提交......再次重复1到8的步骤!!!!!(一上午没了)
那么,有一种工具能够实现,将代码提交到git后就自动打包部署勒,答案是肯定的:Jenkins
当然除了Jenkins以外,也还有其他的工具可以实现自动化部署,如Hudson等
只是Jenkins相对来说,使用得更广泛。
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
转存失败重新上传取消
v正在上传…重新上传取消
Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员省时省力提高开发效率。
CI系统在整个开发过程中的主要作用是控制:当系统在代码存储库中探测到修改时,它将运行构建的任务委托给构建过程本身。如果构建失败了,那么CI系统将通知相关人员,然后继续监视存储库。它的角色看起来是被动的;但它确能快速反映问题。
特别是它具有以下优点:
2.4Jenkins的主要特点
基本环境:
1.jdk环境,Jenkins是java语言开发的,因需要jdk环境。
2.git/svn客户端,因一般代码是放在git/svn服务器上的,我们需要拉取代码。
3.maven客户端,因一般java程序是由maven工程,需要maven打包,当然也有其他打包方式,如:gradle
以上是自动化部署java程序jenkins需要的基本环境,请自己提前安装好,下面着重讲解Jenkins的安装部署配置。
2.4.Jenkins安装
Yum -y install tomcat
转存失败重新上传取消
Systemctl start tomcat
Systemctl enable tomcat
转存失败重新上传取消
1下载jenkins.war
转存失败重新上传取消
转存失败重新上传取消
Systemctl restart tomcat
Systemctl stop tomcat 会看见jenkins的文件
转存失败重新上传取消
下载 jdk 的tar包到指定的目录下、命令如下:
wget https://download.java.net/openjdk/jdk11/ri/openjdk-11+28_linux-x64_bin.tar.gz
或者手动从Oracle官网下载后上传到指定的目录下也行
注意 jdk11.0.2 jenkins版本:Jenkins ver. 2.204.5 tomcat版本:9.0.27 最新版本的jenkins和tomcat10版本启动有问题
转存失败重新上传取消
tar -zxvf jdk-11.0.12_linux-x64_bin.tar.gz
转存失败重新上传取消
修改环境配置文件
vim /etc/profile
根据需要的Java版本把下面代码加入到配置文件内容中
Java11环境变量配置
JAVA_HOME=/devtools/java/java11/jdk-11.0.12(解压jdk的目录)
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/lib
export JAVA_HOME CLASSPATH PATH
Souce /etc/profile
nohup /usr/local/jdk/jdk-11.0.12/bin/java -jar jenkins.war > log.file 2>&1 &
转存失败重新上传取消
第二天重启时
ps -ef | grep java
转存失败重新上传取消
Pkill -9 Java kill -l 9 强制删除Java进程
转存失败重新上传取消
再次重启 Tomcat systemctl restart tomcat 这时会在后台重新启动 nohup /usr/local/jdk/jdk-11.0.12/bin/java -jar jenkins.war > log.file 2>&1 &
错误日志在、usr/share/tomcat/webapp/nohup.out
转存失败重新上传取消
其他日志在/usr/share/tomcat/webapp/log.file
转存失败重新上传取消
注意端口号 Gerrit改为8081
转存失败重新上传取消
ngnix改为81
转存失败重新上传取消
jenkins使用8080
3.1访问http://your_ip:8080便可以看到下面这个页面:
转存失败重新上传取消
cat /var/jenkins_home/secrets/initialAdminPassword 拿到密码
这里我们选择安装推荐的插件:
转存失败重新上传取消
接下来便可以看到 Jenkins 在自动帮我们安装一些插件,包括常用的 Git
、Pipeline
等:
转存失败重新上传取消
然后需要创建第一个用户:
转存失败重新上传取消
接下来就开始我们的 CI/CD 之旅吧!
转存失败重新上传取消
转存失败重新上传取消
创建一个项目
转存失败重新上传取消
测试 添加一个 一个执行命令
转存失败重新上传取消
点击built now
转存失败重新上传取消
控制台输出
转存失败重新上传取消
测试 输出hello word
转存失败重新上传取消
转存失败重新上传取消
可以看到绿色对号 表明成功创建
转存失败重新上传取消
查看虚拟机 创建、usr/caomi.txt
转存失败重新上传取消
另一个测试 输出 hello word 到/usr/caomi.txt
转存失败重新上传取消
接下来创建一个节点 以192.168.56.106 为例子
转存失败重新上传取消
配置节点的信息
转存失败重新上传取消
用root密码去连接
转存失败重新上传取消
完成后
转存失败重新上传取消
上线此节点启动代理
转存失败重新上传取消
把节点加入到Iterm 中执行测试 创建testing2文件
转存失败重新上传取消
测试
转存失败重新上传取消
buid now
在虚拟机的、/jenkins/test/workspace/e 发现testing2 成功success!
转存失败重新上传取消
如何去下载插件呢
转存失败重新上传取消
转存失败重新上传取消
这里可以更新插件下载插件
转存失败重新上传取消
问题如何在挂载两个节点 并且去执行脚本 如下
分别为两个节点打上相同的标签 如 slave-35-label
转存失败重新上传取消
转存失败重新上传取消
注意Java 路径/usr/java/jdk-11.0.12/bin/java/
转存失败重新上传取消
我将三台机器同时加入到一个节点 那么执行命令会在那个机器执行呢
转存失败重新上传取消
随机选择一个虚拟机 执行命令
成功 success
转存失败重新上传取消
另一个测试 当然是hello word 啦
转存失败重新上传取消
测试输出成功 并且创建了a.txt 文件
转存失败重新上传取消