Jenkins+Maven+Git
1. 安装maven环境
1.1 下载maven安装包
wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz
1.2 解压安装包
tar -zxvf apache-maven-3.6.0-bin.tar.gz
1.3 配置环境变量
- 打开环境变量的配置文件
vim /etc/profile
- 新增行MAVEN_HOME,等于号后面是maven解压的文件夹地址
export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.0
- 找到PATH行,追加$MAVEN_HOME/bin
例如
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
- 重新刷新配置文件
source /etc/profile
1.4 查看maven是否配置成功
使用mvn -version查看maven版本信息
1.5 配置镜像仓库
进入maven的conf目录,修改settings.xml文件
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>*</mirrorOf>
</mirror>
2. 安装git
2.1 下载git安装包
wget https://github.com/git/git/archive/v2.17.0.tar.gz
2.2 解压安装包
tar -zxvf v2.17.0.tar.gz
2.3 安装编译源码所需依赖
yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
安装依赖时,yum自动安装了Git,需要卸载旧版本Git,命令为: yum remove git 出现提示输入y即可;
yum remove git
2.4 创建git目录
在 /usr/local 目录下创建git文件夹
mkdir git
2.5 进入 git-2.17.0目录安装git
make prefix=/usr/local/git install
2.6 配置环境变量
- 打开环境变量的配置文件
vim /etc/profile
- 找到PATH行,追加/usr/local/git/bin
例如
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:/usr/local/git/bin
- 重新刷新配置文件
source /etc/profile
2.7 查看git是否安装成功
使用git-version查看git版本信息
查看git安装在哪个目录
which git
2.8 设置你的git用户名和邮箱
git config --global user.name “Your_username”
git config --global user.email “Your_email”
使用git config user.name和 git config user.email查看用户名和邮箱
3. 在Jenkins配置环境
3.1 配置jdk,maven,git路径
系统管理-》全局工具配置
配置完成点击保存
3.2 安装所需插件
需要安装的插件:
Gitlab
#安装之后才可以在系统配置中指定gitlab的IP地址
Git
Git Client
需要添加的插件:Gitlab Hook、Build Authorization Token Root、Gitlab Authentication
#用于jenkins在gitlab中拉取源码
Publish Over SSH
#用于通过ssh部署应用
Maven Integration
#用于新建maven项目
Deploy to container : 自动化部署工程所需要插件
3.3 新建mavenjob
点击保存。测试job
3.4 测试
点击立即构建,查看日志。
进入你的linux上的工作空间,/root/.jenkins/workspace是公共目录空间,后边是拼接你的job名称就是你的工作空间
cd /root/.jenkins/workspace/maven_project
查看从gitlab下载的代码
ls
这是博主的项目工程结构
找到你的工程的target目录下的jar包
根据jar包或者war包编写脚本,运行jar包即可。
下边是我的脚本,可以根据自己的环境进行修改。
echo "hello world"
PID=`lsof -i:9091|awk '{print $2}'`
echo "javajar PID is :$PID"
if ["$PID" -eq ""]
then
echo "no javajar PID"
else
kill -9 $PID
fi
export jar_home=/root/.jenkins/workspace/maven_project/agent-project/agent-project-app/target
echo "use java at $jar_home"
cp -r $jar_home/agent-project-app.jar /shell/agent-project-app.jar
echo "start"
BUILD_ID=dontKillMe nohup java -jar agent-project-app.jar --spring.profiles.active=develop >/shell/subscibe.log 2>&1 &
echo "end"
echo "start success"