在云服务器上自动化部署项目,jenkins和gitee

▮全文概述

   在编写项目时,很头大的事情就是需要自己手动的上传jar包到服务器上启动。如果出现一点bug,就要重头上传和启动。这是一件很烦的事情,所以,可以使用jenkins和gitee实现项目的自动部署


▮全流程

  1.   在本地提交代码到gitee 
  2.   gitee发送请求通知jenkins
  3.   jenkins接到通知后自动执行任务
  4.   构建maven项目,打jar包
  5.   构建后执行启动jar包的脚本

最终,我在本地提交代码,服务器也可以跟着改变,不再需要我手动的去上传jar包到服务器启动。全操作很简洁,不使用Docker,也不需要配置


▮建立gitee仓库

  • 使用github,gitlab都可以
  • 使用gitee比较方便,也不需要我去搭建gitlab

▮下载jenkins

▪上传jenkins的war包到服务器

通过百度网盘分享的文件:jenkins.war
链接:https://pan.baidu.com/s/1RjwJ0Yy7tnyd9WjzukaSvw?pwd=hldy

提取码:hldy 

▪上传Maven包到服务器

通过百度网盘分享的文件:apache-maven-3.6.3.zip
链接:https://pan.baidu.com/s/1fMHnDfXxJ5I9bF88u3h6dw?pwd=hldy 

提取码:hldy 

网盘里Maven的仓库源是阿里云的。如果你的Maven是从别的渠道下载,记得修改“settings.xml” 文件里的仓库源

▪服务器下载git

yum install git

▪服务器下载Java

yum install java-11-openjdk-devel

▮启动jenkins

▪启动命令(端口自定义,安全组记得开放)

nohup java -jar jenkins.war --httpPort=58082 &

▪访问Web界面

http://服务器IP:58082/ 第一次加载需要等待几分钟

 

▪从jenkins日志获取管理员密码

  

vim nohup.out打开日志文件读取token,:q退出vim

 

▪安装推荐插件

  

▪创建一个用户

  

▪实例配置

 


▮添加插件

▪Maven插件

  

向下滚动 ,看到Maven安装完成就行

 

▪Gitee插件

  


▮系统配置

▪配置Maven

▪配置Gitee

  


▮新建任务

▪丢弃旧的构建 

▪配置源码-Git

  从仓库获取连接 

▪配置gitee的构建触发器(gitee通知jenkins执行此任务)

 

 什么都不用管,只需要生成下面这个Gitee WebHook就行

▪设置gitee仓库的WebHook

  

 在这个界面是可以测试钩子是否正常的,但不知为何,在gitee上测试只会报错,但你提交代码的时候又可以正常的触发钩子。所以这里我先不管,后面再去测试钩子是否正常

▪指定pom文件

▪执行shell命令,启动jar包

  

BUILD_ID=DONTKILLME
#获取你想运行jar包的进程号
pid=`ps -ef | grep mindmap.jar | grep -v grep | awk '{print $2}'`
#如果存在则把该进程杀掉
if [ -n "$pid" ]
then
   echo "kill -9 的pid:" $pid
   kill -9 $pid
fi
echo "复制jar包"
#把jenkins打的jar包复制到自己指定的目录下
cp  /root/.jenkins/workspace/mindMap/5.mindmap-service/target/mindmap.jar /root/cloud
echo "启动jar包"
#最后启动jar包并把日志输出到指定的文件中以便查看
nohup java -jar /root/cloud/mindmap.jar & 

 在文本框里输入要执行的命令

"mindmap.jar",是jar包名,这个记得换成你自己的包名

"cp  /root/.jenkins/workspace/mindMap/5.mindmap-service/target/mindmap.jar /root/cloud"
  • "/root/.jenkins/workspace"是jenkins的工作目录,在控制台是看不到的,但是你可以通过cd指令进入。
  • "/root/cloud"是我自定义的一个目录,这个指令就是把打出的jar包转移到这个目录下。这个你可以自定义

至此,整个任务配置完成,如果你需要打多个jar包启动,那你可以把上面这个命令行复制几份去启动就行。如果你向使用DockerFile


▮测试

▪在本地git提交代码到仓库

▪jenkins自动部署

  

点击可以进入,实时查看执行流程

第一次打包需要加载很多东西,所以需要比较长的时间

打包成功 

执行指令,后台启动jar包

可以看到,需要的服务已经全部启动。这就是全自动部署

  • 18
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值