JenKins+git+SpringBoot 本地服务器自动部署项目Jar包
记录Linux服务器 Jenkins拉去Github仓库SpringBoot项目实现在本地服务器自动编译jar包部署
原因:网上很多教程都是Jenkins拉去仓库之后部署到另一个服务器,而我只有一台Linux服务器,所以想实现在本机自动化部署,把教程记录下来
一、Jenkins安装和初始化
这个步骤网上有很多教程,就不在赘述,自行搜索,在系统设置中对 Java、Maven、Git进行配置
二、Linux服务器配置ssh到github中
// 配置用户名
git config --global user.name "username"
// 配置邮箱
git config --global user.email "xxxx@xx.com"
ssh-keygen -t rsa -C "526861348@qq.com" //生成公私与私匙
具体实现这一步操作自行百度教程
注意:生成的git ssh有两个密匙这里将公匙配置到github商
三、Jenkins配置SSH
登录JenKins Web页面
点击 系统管理 -> Manager Credentials(凭据管理)
3.1 点击jenkins
3.2 点击全局凭证
3.3 点击添加凭证
3.4 添加
注意:这里添加的key 是当时生成的私匙!!!
这样子就可以将Jenkins所在的服务器的SSH信息配置进来
四、新建自动部署任务
4.1 点击新建任务
4.2 选择Maven项目
这里如果没有 构建一个maven项目 的选项,需要在 系统管理->插件管理中安装 Maven Integration plugin 插件
4.3 配置项目信息
4.3.1 源码管理配置
4.3.2 shell脚本
将以下脚本复制进去
#!/bin/sh
BUILD_ID=DONTKILLME
pid=$(ps -ef|grep jenkins_test-0.0.1-SNAPSHOT.jar|grep -v grep | awk '{print $2}')
cp -r /root/.jenkins/workspace/jenkins_test/target/jenkins_test-0.0.1-SNAPSHOT.jar /opt/jar/
function stop(){
if [ -n "$pid" ]
then
echo "pid进程 :$pid"
kill -9 $pid
else
echo "进程没有启动"
fi
}
stop
sleep 5s
function start(){
cd /opt/jar/
nohup java -jar jenkins_test-0.0.1-SNAPSHOT.jar &
}
start
其他选项默认不变,点击保存
五、结尾
这样子就可以实现Jenkins在本地服务器自动化部署了,如果第一次没有进行构建,在项目中点击 “立即构建”