一,首先需要安装JDK,我这里用的是jdk1.8版本:
1,上官网下载对应版本的jdkOracle官网
linux x64 tar.gz的包
下载完以后上传到linux服务器新建文件夹:
mkdir /usr/local/java;
将下载的包上传到该文件夹,执行以下命令:
tar zxvf jdk-8u221-linux-x64.tar.gz
vim /etc/profile
执行完这个命令,键盘输入i(insert操作)进行修改profile文件,在最后边添加环境变量,添加完之后输入键盘Esc按键,之后输入冒号:wq 回车,就将修改的内容保存了
export JAVA_HOME=/usr/local/java/jdk1.8.0_221(jdk安装路径)
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
:wq
刷新环境变量配置使其生效:
source /etc/profile
查看jdk是否安装成功,下面表示安装成功了,和jdk对应的安装版本
java -version
二,安装maven
1,到maven下载网站 下载需要版本的maven,我这里下的是3.6.1
下载之后进行解压:
tar -zxvf apache-maven-3.6.1-bin.tar.gz
我这里解压路径是:/var/local/apache-maven-3.6.1
2,配置maven环境变量
vim /etc/profile
同样执行完之后输入i,进行修改,在后边添加环境变量
export MAVEN_HOME=/var/local/apache-maven-3.6.1
export MAVEN_HOME
export PATH=$PATH:$MAVEN_HOME/bin
:wq
修改完之后刷新环境变量配置使其生效
source /etc/profile
验证maven是否安装成功:如下截图表示安装成功,和对应的安装版本
mvn -version
mkdir /usr/local/jenkins
然后到官网下载linux jenkins,jenkins下载,我这里下载的是:jenkins-2.176.2-1.1.noarch.rpm。
下载完之后进行解压
rpm -ivh jenkins-2.176.2-1.1.noarch.rpm
解压完之后需要配置jenkins的jdk路径,同样输入i,进行修改,Ese :wq保存退出
vim /etc/init.d/jenkins
在candidates=…最后加入jdk的路径
/usr/local/java/jdk1.8.0_221/bin/java
修改浏览器访问jenkins的端口,把jenkins的端口修改成自己想要的端口:JENKINS_PORT=“8888”(我改的是8888)
vim /etc/sysconfig/jenkins
修改完成,启动jenkins,浏览器输入服务器地址+端口。我这里是http://xxx.xxx.xxx.xxx:8888
默认登录名,admin,查看初始密码:cat /var/lib/jenkins/secrets/initialAdminPassword
接下来就是安装jenkins打包部署所需要的插件了,这里如果服务器是可以上外网的就可以直接通过jenkins Manage Plugins直接下载,如果不可以上外网可以通过jenkins官网去下载插件和相关的依赖上传到jenkins,路劲(Jenkins->Manage Jenkins->Manage Plugins->高级)如图:
local plugin(语言),Localization: Chinese (Simplified)(简体中文),git,gitlab,maven,nodejs,Publish Over SSH。
1,JDK安装:
jdk的安装路径:安装在linux系统下的jdk路径
2,Git:
这里用默认的就可以:
3,Maven安装:
maven的路径:安装在linux系统下的安装路径
TIP!!!:
因为我这边构建maven打包需要本地的maven依赖的支持,所以需要把原来服务器上的repo文件夹下边的东西拷贝到安装的maven的的安装目录下边,然后修改setting文件添加本地maven的路径
四,构建项目(maven)
添加配置,码源管理,我这里选择git;Repository URL(项目的git地址)进入git把这个地址复制进去就可以,添加用户名密码(git的用户名密码)
构建环境:pom.xml文件所在的jenkins下边的路径:
配置文件应用保存,就可以进行构建打包了,后边还可以构建完之后通过邮件发送通知,配置一个发送邮件服务器,邮箱和接受邮件的邮箱就可以了
1,编写启动脚本:我这边有管理端和接口端:
管理端:
#!/bin/bash
cd admin
PID=“admin.pid”
if [ -f “$PID” ]; then
kill -9 $(cat $PID)
fi
nohup java -jar target/admin-*.jar >> admin.log 2>&1 &
把这个sh文件放到打包的目录下边:
jenkins里边Admin项目添加打包完执行脚本:
sh /var/lib/jenkins/workspace/Admin/admin.sh
接口端:
#!/bin/bash
cd rest
PID=“rest.pid”
if [ -f “$PID” ]; then
kill -9 $(cat $PID)
fi
nohup java -jar target/rest-*.jar >> rest.log 2>&1 &
同样jenkins里边Admin项目添加打包完执行脚本:
sh /var/lib/jenkins/workspace/Rest/rest.sh
这样就完成了后端的maven项目打包到部署的整个过程。下面还有nodejs项目的打包过程