安装jenkins
第一步:
改变JDK环境变量,我这是之前使用的是jdk1.8的版本,使用jenkins要求JDK版本必须在11以上,我这是跟改为jdk11版本;
文件路径:/usr/yym在该目录下 java -version 查看jdk版本
修改版本:vim /etc/proflie 编辑修改以下内容
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.21.0.9-1.el7_9.x86_64
export JRE_HOME=$JAVA_HOME
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
第二步:
1.下载tomcat解压包,确保运行不报错;
2.在/usr/yym文件下创建tomcat,将下载好的tomcat解压包放在该目录下进行解压;
mkdir tomcat
tar -zxvf 要解压的包名字
3.解压完成以后,启动tomcat,在/usr/yym/tomcat/ apache-tomcat-9.0.78
/bin目录下启动/关闭
./startup.sh 启动tomcat ./shutdown.sh 关闭tomcat
4.测试访问是否可以访问到tomcat页面; IP地址:8080
5.将jenkins.war放到tomcat的webapps下面;
6.启动jenkins,访问jenkens;
ip+8080/jenkins
https://192.168.146.8/jenkinshttps://192.168.146.8/jenkins
密码路径就是图中 /root/.jenkins/secrets/initialAdminPassword 在这个里面获取密码
vim /root/.jenkins/secrets/initialAdminPassword
使用jenkins部署项目-01
简易版使用jenkins部署项目
1.将war包部署到tomcat中;
下面给出一个简单示例,将已有的war包部署到tomcat中(jenkins与tomcat在同一台主机);
2.点击Jenkins主页的新建任务;
3.输入任务名称;
4.选择构建一个自由风格的软件项目后点击确定;
5.在构建内添加构建步骤,选择执行shell
输入脚本内容,脚本内容如下:
#!/bin/sh
jarPath=/usr/java/jar
projectJar=/usr/java/project
# 创建文件夹/usr/java/project
mkdir -p ${projectJar}
echo "====================关闭jar的进程====================="
l=`ps -ef|grep -v grep|grep demo|awk '{print $2}'`
kill -9 $l
echo "============删除旧jar============="
rm -rf ${projectJar}/demo.jar
echo "======拷贝新的jar到运行的目录下面======="
cp ${jarPath}/demo.jar ${projectJar}/demo.jar
echo "================sleep 10s========================="
for i in {1..10}
do
echo $i"s"
sleep 1s
done
export BUILD_ID=DontKillMe
echo "====================启动jar====================="
nohup java -jar ${projectJar}/demo.jar &
/usr/yym目录下 使用命令 :nohup java -jar 文件名 &
启动springBoot启动日志 tail -f nohup.jar
根据脚本内容,创建两个新路径
分别在jar文件下放入端口号为9919的demo.jar 这个是用来替换下面路径内容的;
在给project文件下放入端口号为9999的demo.jar 先访问这个,在访问jar
测试访问是否可以获取到数据 192.168.146.8:9999/test
然后使用jenkins -shell脚本运行测试,再次换个端口号192.168.146.8:9919/test
两次运行结果是一样的,除了访问端口号,9999端口号会被9919端口号替换掉;
使用jenkins部署项目-02
1.准备linux安装环境
a. 在linux上安装jdk,并配置环境变量
b. 在linux上安装tomcat,并配置环境变量
c.在linux上安装git
1.安装Git的依赖环境
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
2.查找git路径'
whereis git
3.删除已有的git
yum -y remove git
4.查看git是否删除成功 git --version
5.安装一个新版本的git
wget https://github.com/git/git/archive/v2.9.3.tar.gz
tar -zxvf git-2.9.3.tar.gz
安装路径 :/usr/yym文件夹下创建git文件夹
mkdir git
上面这个命令报错:连接失败,不让下载;
我们使用 yum -y install git
git安装成功 ;
d.在liunx安装maven,并配置环境变量;
1.在/usr/yym下面创建文件夹maven;
2.将tar包上传到maven文件中并解压
https://downloads.apache.org/maven/maven-3
tar -zxvf apache-maven-3.8.8-bin.tar.gz
3.配置环境变量;
查看自己的home路径
vim /etc/profile目录进行编辑
export MAVEN_HOME=/usr/yym/maven/apache-maven-3.8.8
source /etc/profile 让刚配置的环境变量生效
mvn -version 查看maven对应的版本
cd conf文件配置mirrors,把阿里镜像配置进去;
阿里镜像配置内容;
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
下载maven插件 mvn help:system
配置jenkins
jenkins安全配置
配置完成,点击应用,然后保存;
jenkins工具配置
文件路径
jdk文件路径
git路径
maven路径
配置完成,点击应用,然后保存;
使用maven安装插件
使用jenkins创建一个带maven的任务
把项目上传到git上面;
项目上传git成功;
构建触发器
配置构建环境 ;
shell脚本内容如下:
BUILD_ID=DONTKILLME
echo "部署的目录和项目名称"
sh /usr/yym/test/build.sh
echo "success"
配置完成,点击应用并保存;
注:
在/usr/yym文件夹下创建test文件
/usr/yym/test文件下 vim build.sh
配置内容如下:
#! /bin/bash
echo "部署的目录和项目名称"
DIR="/usr/java/project"
projectName="demo"
echo "待部署的应用服务器"
server_ips="192.168.146.8"
#所有的参数列表
for server_ip in ${server_ips[@]}
do
echo "进行备份操作"
mkdir -p $DIR/backup/${projectName}
if [ -f "$DIR/${projectName}/${projectName}.jar" ];then
mv $DIR/${projectName}/${projectName}.jar $DIR/backup/${projectName}/${projectName}-`date "+%Y%m%d_%H%M%S"`.jar
fi
echo "拷贝jar包到目标服务器的目录下"
cp ${WORKSPACE}/target/*.jar $DIR/${projectName}/${projectName}.jar
echo "目标服务器:$DIR/${projectName}/${projectName}.jar"
echo "连接进行发布操作"
#mv /usr/java/test/demo.jar $DIR/backup/${projectName}/${projectName}.jar
echo "开始关闭jar"
l=`ps -ef|grep demo.jar|grep -v grep|awk '{print $2}'`
for i in $l
do
kill -9 $i
done
sleep 5s
echo "启动jar"
nohup java -jar $DIR/${projectName}/${projectName}.jar --server.port=9999 > release_out.log 2>&1 &start_ok=false
done
sh build.sh