前提条件,linux系统安装了JDK、Maven、git
安装Jenkins
jenkins下载地址:https://www.jenkins.io/downlo
安装完成后,安装推荐的插件后在安装 Gitee Plugin
就可以开始部署了
配置gitee信息
系统管理》系统配置
Api令牌生成在gitee
如果jenkins不在要部署项目的机器上,需配置服务器的信息
点高级,配置服务器登录密码
这样服务器就配置好了
新建任务
maven编译命令 clean install -Dmaven.test.skip=true -Ptest
编译完成后执行启动脚本
//本地jar包拷贝,适用于同一服务器文件拷贝,不用上传
\cp -rf /root/.jenkins/workspace/Front/target/Qfront-0.0.1-SNAPSHOT.jar /home/front/target
cd /home/front
//启动脚本
./start.sh
如果不是在一台服务器,
jenkins的工作空间,前面配置要是正确,点构建,会生成工作空间
远程的服务器就配置这个相对路径,如果是同一台服务器则看构建日志
这个就是服务器上生成的jar包路径
启动脚本,复制下面,文件保存为 .sh格式的,然后上传到服务器
#!/bin/bash
SOR_DIR=服务器jar包路径
PRO_NAME=jar包名
FILE_TYPE=jar
PID=`ps -ef |grep $PRO_NAME.$FILE_TYPE |grep -v grep |awk '{print $2}'`
if [ -z $PID ];then
echo "===the initial service is null, and it will be started now!==="
nohup java -Xms64M -Xmx1024M -Duser.timezone=\"GMT+08\" -Duser.language=\"zh\" -Duser.region=\"CN\" -Dspring.profiles.active=test -jar $SOR_DIR/$PRO_NAME\.$FILE_TYPE >> $SOR_DIR/nohup\.out 2>&1 &
echo "===service started successful!==="
else
/bin/kill -9 $PID
nohup java -Xms64M -Xmx1024M -Duser.timezone=\"GMT+08\" -Duser.language=\"zh\" -Duser.region=\"CN\" -Dspring.profiles.active=test -jar $SOR_DIR/$PRO_NAME\.$FILE_TYPE >> $SOR_DIR/nohup\.out 2>&1 &
echo "===service started successful!==="
echo "===service restarted successful!==="
fi
上传后查看文件类型
vi start.sh 编辑文件
:set ff=unix 设置文件格式为linux可执行的
:wq! 保存
权限设置
在sh文件执行以下语句
chmod +x *.sh
这样基本就完成了,点构建
配置push代码就自动部署
复制这个密码,服务器必须可以外网访问
在gitee里面,配置后,后面只要一push代码到分支就可以自动触发发布了