java打包发布 git,centos7 jenkins以jar包方式自动部署gitlab的java(springboot web)项目...

1、gitlab创建java项目

略(自行创建)

2、在jenkinse服务器生成ssh key

# ssh-keygen -t rsa

6caa58969ed9

2.1 查看ssh key,复制

# cd /root/.ssh/

# cat id_rsa.pub

6caa58969ed9

image.png

3、在gitlab 中配置ssh key

6caa58969ed9

打开设置

6caa58969ed9

ssh key

6caa58969ed9

add key

4、在jenkins配置jdk 与 maven

4.1 jdk安装(略)

4.2 下载maven,下载地址

# wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

6caa58969ed9

maven 3.6.3

6caa58969ed9

选择目录

4.3 解压、移动到/usr/local下,并配置环境变量

# cp apache-maven-3.6.3-bin.tar.gz /usr/local

# cd /usr/local

# tar -zxvf apache-maven-3.6.3-bin.tar.gz

# mv apache-maven-3.6.3 maven

# rm -rf apache-maven-3.6.3-bin.tar.gz

6caa58969ed9

4.3.1 配置环境变量

export MAVEN_HOME=/usr/local/maven

:$MAVEN_HOME/bin

6caa58969ed9

image.png

- 生效

# source /etc/profile

- 查看 mvn版本

# mvn -v

6caa58969ed9

5、jenkins 配置jdk

6caa58969ed9

打开配置

6caa58969ed9

配置 jdk

6caa58969ed9

no git path

5.1 安装git,下载地址

6caa58969ed9

git

6caa58969ed9

git version

# wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.0.tar.gz

- 将tar包移到/usr/local下,解压,再重命名为git

# tar -zxvf git-2.26.0.tar.gz

5.1.1 git构建时需要的环境

# yum groupinstall "Development Tools"

6caa58969ed9

5.1.2 安装devel包

# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

6caa58969ed9

5.1.3 安装git

进入git 目录

# make install

5.1.3 配置git的环境变量

:/root/bint/git

6caa58969ed9

image.png

5.2 jenkins 配置git

6caa58969ed9

git

5.3 jenkins 配置maven

6caa58969ed9

mvn

6 jenkins安装Git、Gitlab、maven(Maven Integration)、SSH(Publish Over SSH)、Gitlab Hook Plugin插件

6caa58969ed9

7 jenkins配置gitlab

6caa58969ed9

6caa58969ed9

6caa58969ed9

api token

6caa58969ed9

gitlab access token

6caa58969ed9

配置

6caa58969ed9

将生成的token复制到下面则可

6caa58969ed9

7.1 jenkins配置ssh ,如果ssh key无效 解决参考

6caa58969ed9

6caa58969ed9

image.png

8、创建项目

6caa58969ed9

6caa58969ed9

6caa58969ed9

6caa58969ed9

触发定时器

到gitlab项目配置webhooks

6caa58969ed9

6caa58969ed9

6caa58969ed9

回到jenkins继续页面配置

6caa58969ed9

创建restart.sh脚本

6caa58969ed9

脚本内容

echo "===============STOP 服务开始 =============="

pidlist=`ps -ef|grep [打包出来的jar] | grep -v "grep"|awk '{print $2}'`

#ps -u $USER|grep "Java"|grep -v "grep"

if [ "$pidlist" = "" ]; then

echo "no [打包出来的jar] pid alive"

else

echo "[打包出来的jar] Id list :$pidlist"

for pid in ${pidlist}

{

kill -9 $pid

echo "KILL $pid:"

echo "service stop success"

}

fi

echo "===============STOP 服务结束 =============="

echo "===============START 服务开始 =============="

JAVA_HOME=[jdk目录]

dir=/opt/jenkins_jars

cd $dir

echo dir=$dir

jar=$(find /lib -type f -name *.jar)

classpath=$dir/*:$dir/lib/*:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

echo classpath=$classpath

echo ---------------------------------------------

nohup $JAVA_HOME/bin/java -classpath $classpath -XX:-UseGCOverheadLimit -Xms1024m -Xmx2048m -jar $dir/[jar名称] > $dir/log/$(date +'%Y%m%d').log &

echo "===============START 服务结束 =============="

回来jenkins继续配置

6caa58969ed9

math?formula=%3D%3D%E9%85%8D%E7%BD%AE%E5%AE%8C%E6%88%90%20%3D%3D

开始测试

1、第一次构建

6caa58969ed9

构建完成

6caa58969ed9

image.png

当gitlab中对应的项目与jenkins配置触发器对应的分支发生marge事件发生时,会通知jenkins进行构建

math?formula=%3D%3D%3D%3D%20%E6%AD%A3%E6%96%87%20END%20%3D%3D%3D%3D

math?formula=%E5%A3%B0%E6%98%8E%EF%BC%9A%E5%8E%9F%E5%88%9B

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值