在jenkins中通过获取代码仓库中最新代码,进行自动化部署,而省去手动打包、上传服务器、部署这一系列步骤,非常方便。
java -jar
启动当前项目。在Jenkins页面“系统管理”-->“管理插件”-->"可选插件"中搜索:
Maven Integration
用来支持构建maven项目Publish Over SSH
用来把构建好的部署包传送到指定服务器的指定位置Github
来获取仓库源码#1.下载maven并解压
wget https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
tar -zxvf apache-maven-3.6.3-bin.tar.gz
#2.修改maven的远程镜像为阿里云镜像库
vim conf/setting.xml
...
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
...
#3.在/etc/profile文件末尾增加以下配置
vim /etc/profile
#注意这里是maven的安装路径,globalEnvi/文件夹需要提前建立
M2_HOME=/home/jenkins/globalEnvi/apache-maven-3.6.3
#4.重载/etc/profile这个文件
source /etc/profile
#5.修改环境变量
export PATH=${M2_HOME}/bin:${PATH}
#1.将下载完的jdk解压
tar -zxvf jdk-11.0.7_linux-x64_bin.tar.gz
#2.在/etc/profile文件末尾增加以下配置
vim /etc/profile
export JAVA_HOME=/home/jenkins/globalEnvi/jdk-11.0.7
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
#3.更新配置文件
source /etc/profile
#安装依赖
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel asciidoc
yum install gcc perl-ExtUtils-MakeMaker
在Jenkins页面“系统管理”-->“管理插件”-->”全局工具配置”:
在Jenkins页面“系统管理”-->“系统设置”-->”Publish Over SSH”:
Passphrase
服务器的密码Path to key
连接远程服务器密钥文件的路径Key
密钥文件的内容Name
自定义服务器名HostName
服务器IP地址UserName
服务器用户名Remote Directory
传输文件的目录存放在服务器的路径。如果不是SpringBoot项目,或者需要放在tomcat,就是放在tomcat目录的下webapps目录下。或者tomcat目录下,在构建项目可以再加到webapps路径下。在Jenkins页面“系统管理”-->“Manage Credentials”-->”凭据”-->“全局”-->“添加凭据”:
#!/bin/bash
source /etc/profile
echo "Restarting SpringBoot miniprogram Application"
pid=`ps -ef | grep dataway-demo-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
kill -9 $pid
echo "关闭进程:"$pid
fi
echo "授予当前用户权限"
chmod 777 /home/jenkins/project/dataway-demo-0.0.1-SNAPSHOT.jar
echo "执行....."
nohup java -jar /home/jenkins/project/dataway-demo-0.0.1-SNAPSHOT.jar &