自动化部署 jenkins ,超详细,本人自己已使用

这边都是maven工程的相关处理:其中分为打成war包和打成jar包二种方式的自动化部署。

 

一、打成war包工程的步骤:

先写jenkins安装后的配置吧,后面再加前面的相关配置。

jenkins安装后

1、新建任务

2、新建了任务进行配置

 在进行配置第二步的时候,关键开始了,一般情况,会在这卡一会。

注意点:1、你的jenkins服务器上 git 的账号在你的git项目管理中需要有账号,并且 jenkins的服务器需要生成密钥和私钥。这样就可以通过SSH来获取git服务器上的代码了。(就相当于把jenkins服务器当作你自己的电脑,生成密钥,下代码)

2、jenkins服务器 生成的密钥和私钥如何处理,可查看这篇文章https://blog.csdn.net/qq_40026782/article/details/95744994。(处理后,就是在下图的第二个框中能够选择了)

 配置第四步:配置你的工程打包方式,我这边是maven工程war包打包

 

注意!注意!注意!重要的事情锁三遍,配置第六步重点来了

1、选择自己的服务器(这里是下拉选择,相关配置是在jenkins管理界面的  “系统管理”—“系统设置” —“Publish over SSH” 里面添加的 可参考https://blog.csdn.net/qq_40026782/article/details/95746691

2、2是执行了你的git工程的pom文件打包后,你的war包位置。

3、3指的是忽略的路径,可直接参考我的。

4、4是指打包后对项目所在的服务器,经行的相关操作,包括停服务、备份、打包、启服务。

 

 

注意:

        在第4步的时候,我的项目是linux系统,所以直接写的Linux指令。这个指令是你在1配置自己的服务的服务器的时候,会写项目服务器登入账号和密码(为了方便最好直接用root账号,不然各种权限限制),这个指令就是这个账号执行的相关linux 命令,都需要加上sudo 经行赋权,其他的命令就是这个账号在linux系统中如何(1)停tomcat(2)备份(3)移动war包(4)启动tomcat。这一系列的操作。我这边附上参考语句自己体会下:

#!/bin/sh
#defined
tomcat_home="/data/knb-tomcat-8080"
war_webapps="/data/knb-es"
war_file="ebs_es_pt"

sudo sh "$tomcat_home"/bin/kill.sh
echo "*****Backup and remover war file*****"
sudo  mv "$war_webapps"/"$war_file"  "$war_webapps"/"$war_file"`date +%Y-%m-%d_%T`
sudo  mkdir /data/knb-es/"$war_file"
echo "*****copy war to webapps*****"  
sudo  unzip -oq /var/data/backup/"$war_file".war -d /data/knb-es/ebs_es_pt/
sudo rm -rf /var/data/backup/"$war_file".war
echo "*****Start tomcat*****"  
sudo  sh "$tomcat_home"/bin/startup.sh

当然如果你的服务器用了docker那么在sudo 后面还得加docker exec -i "$docker_name"      

docker的服务器参考如下:

 

#!/bin/sh
#defined
tomcat_home="/var/data/tomcat_ebs_8092"
host_home="/var/data/tomcat_ebs/tomcat_ebs_8092"
war_webapps="/data/webapp8092"
war_file="erpt"
docker_name="tomcat_ebs"

sudo docker exec -i "$docker_name" sh "$tomcat_home"/bin/kill.sh
echo "*****Backup and remover war file*****"
sudo docker exec -i "$docker_name"  mv "$war_webapps"/"$war_file".war  "$war_webapps"/"$war_file".war.`date +%Y-%m-%d_%T`.save
sudo docker exec -i "$docker_name" rm -rf "$war_webapps"/"$war_file"
echo "*****copy war to webapps*****"  
sudo mv /var/data/backup/"$war_file".war "$host_home"/
sudo docker exec -i "$docker_name" mv "$tomcat_home"/"$war_file".war "$war_webapps"/
echo "*****Start tomcat*****"  
sudo docker exec -i "$docker_name" sh "$tomcat_home"/bin/startup.sh

 

 这边docker就不详细说了,linux系统docker的相关搭建和配置在我的另一个文章有介绍,什么是docker外部路径和内部路径

linux系统docker安装后,创建容器(Linux系统安装系列)

 

 tomcat中的bin目录下的kill.sh文件一般没有,就相当于shutdown.sh 这执行的东西

我这边的kill.sh 内容是下面的,可以直接拿去用:

ps -ef |grep /bin/java|grep "$path"|grep -v grep|cut -c 9-15|xargs kill -9
 

 还有就是 “sudo  sh "$tomcat_home"/bin/startup.sh” 执行这个的时候可能会报错,这时候需要在tomcat的startup.sh 文件中添加:

source /etc/profile
export LANG="en_US.UTF-8"

给个图给你们看看

 

关键的配置服务这边还有可能不理解的,可查看相关补充说明 : https://blog.csdn.net/qq_40026782/article/details/95748124

 

 

 

配置好了后直接点确定就ok

 

3、相关配置ok了后,就可以构建了。

下面的构建历史,点击小圆圈可以查看控制台构建输出情况。

 

最后附上docker经行构建时候可能会遇到的问题:

问题一:

 解答:这个是你的服务器登入的用户名或密码错误,相关配置是在jenkins管理界面的  “系统管理”—“系统设置” —“Publish over SSH” 里面添加的 可参考https://blog.csdn.net/qq_40026782/article/details/95746691

 

问题二:

 

解答:这个就是我上面说的,需要在tomcat启动文件 startup.sh  加上 :

source /etc/profile
export LANG="en_US.UTF-8"

给个图给你们看看

 

二、自动化部署vue前端代码

我这边是用的tomcat的启动vue前端的,所以配置和一差不多,唯一的区别就是在配置第六步有区别,我这边就写下重点的配置六吧:

因为vue打包的是一个文件夹,所以在配置第六步的时候我们需要分2步走:1、jenkins服务器上打包vue,并压缩成文件。2、上传项目服务器,停服务,备份、解压、启服务。我把配置贴出来,查考下

关键点注意:上面我们打成war包的时候选择的是   “Build” 而这边我们选择 “执行shell”

第一步:

第二步:

 

三、打成jar包工程的步骤:

我这边是用的tomcat的启动jar包工程的,所以配置和一差不多,唯一的区别就是在配置第六步有区别,我这边就写下重点的配置六吧:同样都是用 “Build”但是在build之前需要调整下参数确保打包成功!

第一步:打包前的操作,调整配置文件(看情况,需要调整就可以用pre steps调整,不需要就不用了 ,主要是让你们了解下pre steps 的用法

第二步:打包 

 

第三步:项目服务器部署

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值