当前位置: 首页 > news >正文

jenkins自动化部署springboot、gitee项目

服务器需要安装jdk11、maven、gitee

1. jenkins安装

# yum源
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
# 公钥
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io-2023.key
# 安装
yum install jenkins

如果yum源报错出现ERROR: cannot verify pkg.jenkins.io’s certificate, issued by ‘/C=US/O=L…
使用:sudo yum install -y ca-certificates

2. 修改jenkins端口配置

vim /etc/syscofig/jenkins

修改内容:
JENKINS_PORT=“8888”

3. 启动

systemctl start jenkins
打开浏览器访问:http://xxxxxx:8888/ ;你的ip地址,注意端口是否开放

4. 查看密码

cat /var/lib/jenkins/secrets/initialAdminPassword

不安装插件
在这里插入图片描述
在这里插入图片描述

5. 修改国内插件下载地址(嫌麻烦的直接跳第7步,插件早已经准备好了)

Jenkins->Manage Jenkins->Manage Plugins,点击Available,等待加载完成后。在服务器中执行

cd /var/lib/jenkins/updates
sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

然后,Manage Plugins点击Advanced,把Update Site改为国内插件下载地址

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

在这里插入图片描述
Sumbit后,在浏览器输入: http://xxxx:8888/restart ,重启Jenkins。

6. 下载插件 方法1

Jenkins->Manage Jenkins->Manage Plugins,点击Available,搜索插件就可以安装了

需要的插件
Localization: Chinese (Simplified) # 切换简体中文
Gitee
Maven Integration
Pipeline Maven Integration

可能会安装失败多试几次,要是还不行直接第7步,插件已经准备好了,导入就行

7. 下载插件 方法2

下了好久才准备好,直接导入吧
阿里云盘链接

将下载下来的 plugins 文件夹替换掉 /root/.jenkins中的 plugins文件夹
然后在jenkins页面,点击系统管理-读取设置即可

在这里插入图片描述

8. 正片:部署

1. 系统管理-全局工具配置

1. jdk,Java_home弄成你自己的

在这里插入图片描述

2. git

在这里插入图片描述

3. maven

在这里插入图片描述

2. 新建自由风格的任务

1. 主页新建,名字随便起

在这里插入图片描述

2. General。添加文本参数

名称必须叫:projectPath 和 jarName。后面脚本会用到
在这里插入图片描述

3. 源码管理

在这里插入图片描述

4. 构建触发器

4.1 jenkins触发器配置webhook

在这里插入图片描述
在这里插入图片描述

4.2 gitee配置webhook,打开在源码管理配置的那个git仓库

在这里插入图片描述
在这里插入图片描述

5. 最后一步,编写脚本

在这里插入图片描述

	cd $projectPathecho 进入项目目录git pull echo 拉取修改完成mvn clean installecho 打包完成/home/www/shell/stop.sh $jarName echo 停止运行 $jarName/home/www/shell/start.sh $projectPath $jarName

创建文件夹 /home/www/shell,然后在shell里面创建下面两个文件

1. /home/www/shell/stop.sh
jarName=${1}
echo "正在停止" ${jarName} =====================
pid=`ps -ef | grep ${jarName} | grep -v grep | awk '{print $2}'`
echo "pid为:" ${pid}
if [ -n "$pid" ]
thenecho "kill -9 的pid:" $pidkill -9 $pid
fi
2. /home/www/shell/start.sh
projectPath=${1}
jarName=${2}
cd ${projectPath}/target/
echo nohup java -jar ${projectPath}/target/${jarName}
BUILD_ID=dontKillMe nohup java -jar ${jarName} >./log.txt 2>&1&

修改这两个文件权限

chmod 777  /home/www/shell/start.sh
chmod 777  /home/www/shell/stop.sh

9. 测试自动化部署,git仓库随便提交一下

成功触发
在这里插入图片描述

点击这个 #11 可以查看控制台输出和其它详细信息。如果启动失败可以看一下具体报错信息,修改脚本。(ps:一般都是文件夹路径啥的写错了)
在这里插入图片描述

http://www.lryc.cn/news/173121.html

相关文章:

  • Python环境配置及基础用法Pycharm库安装与背景设置及避免Venv文件夹
  • PHP常见的SQL防注入方法
  • 分布式和中间件等
  • 通过http发送post请求的三种Content-Type分析
  • Vue中的自定义指令详解
  • [管理与领导-100]:管理者到底是什么?调度器?路由器?交换机?监控器?
  • 保研CS/软件工程/通信问题汇总
  • word、excel、ppt转为PDF
  • 2023华为杯D题——基于Kaya模型的碳排放达峰实证研究
  • 有哪些好用的上网行为管理软件?(上网行为管理软件功能好的软件推荐)
  • npm install报错 code:128
  • 爬虫 — Scrapy 框架(一)
  • Python编程语言学习笔记
  • 【运维面试100问】(三)说说你在故障排除方面的经历
  • Postman 全局配置接口路径变量等
  • 一文掌握CodiMD安装与使用
  • 无人机顶会顶刊2023
  • 【Java毕设项目】基于SpringBoot+Vue校园便利平台的设计与实现
  • 03Nginx的静态资源部署,反向代理,负载均衡,动静分离的配置
  • 刷题笔记24——完全二叉树的节点个数
  • sentinel环境搭建以及微服务接入
  • Klotski: Efficient Obfuscated Execution against Controlled-Channel Attacks
  • 阿里云无影云电脑角色AliyunServiceRoleForGws什么意思?
  • 操作系统--------调度算法篇
  • 宝塔composer 安装laravel依赖出现的问题
  • OpenCV自学笔记二十四:支持向量机
  • 网络初识
  • 极坐标和直角坐标的雅克比矩阵推导
  • 经管博士科研基础【25】概率论中的相关基础概念
  • 计算机网络的相关知识点总结(一)