先查看有无git:git --version
有则删除:yum remove git
安装git依赖包:yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
删除已有的git:yum remove git
切换目录到/usr/local/git:mkdir /usr/local/git ; cd /usr/local/git
下载git安装包:wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz
解压git安装包:tar -zxvf git-2.9.5.tar.gz
切换目录到解压路径:cd git-2.9.5
配置安装路径:./configure prefix=/usr/local/git/
开始编译安装:make && make install
完成后查看git版本:git --version
创建目录并跳转:mkdir /usr/local/maven ; cd /usr/local/maven
下载maven:wget http://mirrors.shu.edu.cn/apache//maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
解压安装包:tar zxvf apache-maven-3.3.9-bin.tar.gz -C /usr/local/maven
编辑环境变量:
vi /etc/profile
更改和加入以下内容(PATH一般已经定义 后面直接加上:$MAVEN_HOME/bin)
export PATH=$JAVA_HOME/bin:$PATH:$MAVEN_HOME/bin
export MAVEN_HOME=/usr/local/maven/apache-maven-3.3.9
生效环境变量:source /etc/profile
查看版本:mvn -version
去jenkins官网下载:https://jenkins.io/download/
选择以下内容
将下载的war上传到服务器的tomcat上:cd /usr/local/tomcat/webapps ; rz
重启tomcat:service tomcat restart
访问:http://ip:8080/jenkins
根据指示获取密码:cat /home/www/.jenkins/secrets/initialAdminPassword
如果出现登录后白屏,进入/home/www/.jenkins目录,修改config.xml,修改内容如下
重启tocmat即可。后期如果需要设置登录的话,进入系统管理->全局安全配置,按照下图设置
配置全局变量(jdk以及maven):
插件安装(系统管理->插件中心):
配置gtiee令牌凭据,如果不成功可以使用username and password(系统管理->插件中心):
输入完后点击右下角的测试连接看看有无问题,出现成功字样即可。
选择maven项目,然后参考以下图片进行配置
这边由于无法使用令牌认证,所以我使用了帐号和密码认证
构造项目前我们需要先关闭正在运行的程序,防止后面运行时出现端口占用情况
#!/bin/bash
echo "Stopping SpringBoot Application"
pid1=$(ps -ef|grep -i login-server.jar |grep -v "grep"|awk '{print $2}')
echo "获取pid成功"+$pid1
if [ -n "$pid1" ];
then kill -9 $pid1
echo '解除端口占用'
fi
pid2=$(ps -ef|grep -i uka-admin.jar |grep -v "grep"|awk '{print $2}')
echo "获取pid成功"+$pid2
if [ -n "$pid2" ];
then kill -9 $pid2
echo '解除端口占用'
fi
pid3=$(ps -ef|grep -i treeknow.jar |grep -v "grep"|awk '{print $2}')
echo "获取pid成功"+$pid3
if [ -n "$pid3" ];
then kill -9 $pid3
echo '解除端口占用'
fi
构建时通过maven命令运行,-Pprod参数代表了使用application-prod.yml的配置文件
构造完后通过以下设置进行jar的运行
#!/bin/bash
echo "授予当前用户权限"
chmod 777 /home/www/.jenkins/workspace/
echo "执行......"
BUILD_ID=dontkillMe
java -jar /home/www/.jenkins/workspace/uka/login-server/target/login-server.jar --spring.profiles.active=prod team.csrj.uka.loginserver.LoginServerApplication &
sleep 80
#这边sleep只是为了让程序有充足时间打印日志,来判断程序是否启动成功
#最后面的"&"代表将该项目放入后台运行,否则jekins会一直卡在tomcat启动窗口而不往下继续
java -jar /home/www/.jenkins/workspace/uka/uka-admin/target/uka-admin.jar --spring.profiles.active=prod team.csrj.uka.admin.UkaAdminApplication &
sleep 50
java -jar /home/www/.jenkins/workspace/uka/uka-treeknow/target/treeknow.jar --spring.profiles.active=prod team.csrj.uka.treeknow.UkaTreeknowApplication &
sleep 50
echo "执行完成."
PS:由于对shell脚本不熟悉,因此上面的shell代码写的很一般,有能力的可以自行改为自己需要的脚本代码