安装Jenkins
1、进入 http://pkg.jenkins-ci.org/redhat/ 下载rpm包,推荐使用这种方式,如果使用yum install jenkins方式下载很慢(我的是这样)。
注意看这里,不同版本依赖的Java环境不一样。
安装jdk这里:Linux 基础环境搭建
2、将下载好的包丢进opt文件夹里面,如下:
3、执行下面的命令
[root@localhost default]# rpm -ivh jenkins-2.173-1.1.noarch.rpm
此时jekins会将war包放在 /usr/lib/jenkins
4、打开配置文件配置jenkins
[root@localhost default]# vim /etc/sysconfig/jenkins
修改jenkins用户,默认为jenkins, 将其修改成root, 否则在复制文件时会报权限不足
端口也是在这里改:
启动jenkins:
[root@localhost default]# service jenkins start
[root@localhost default]# service jenkins restart
如果启动失败,很有可能就是Java环境没装好,也有可能是之前装过旧版本的没卸载干净。
5、在浏览器输入IP + 端口(默认8080)
如过遇到页面访问404,就自行检查防火墙设置和访问端口吧
centOS 关闭防火墙步骤
6、按照页面提示去服务器寻找管理员密码
[root@localhost default]# cat /var/lib/jenkins/secrets/initialAdminPassword
输入密码进入,等待一、两分钟别着急,进入如下页面。
选推荐就好了,然后等待系统安装,这里花费的时间比较长,耐心等待。
下载完成之后就安装完毕了,就下来就可以配置用户、构建项目了,更详细的使用请看:https://blog.csdn.net/lc15013182321/article/details/82802833
发布项目到远程服务器
SSM/SSH项目
需要提前在服务器装好tomcat,不会装的看这里:Linux 基础环境搭建
我们使用Deploy to container
这个插件完成,先安装此插件。
插件具体使用方法看这个:https://www.cnblogs.com/xuxiaojian/p/9079132.html
在TOMCAT_HOME/conf/tomcat-users.xml添加manager-script组和相应的用户
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
类似下面这样:
这里配置了tomcat-users.xml
如果还是出现403没有权限看这里:https://blog.csdn.net/fly_leopard/article/details/79654254
部署过程中可能会遇到异常,这里有人总结了可能会遇到的异常:https://blog.csdn.net/fly910905/article/details/80262658
SpringBoot项目
SpringBoot项目不需要装tomcat。
部署项目至服务器参考这个即可:Jenkins自动部署SpringBoot项目
这里我没有使用上面的项目启动脚本,而是参考另外一篇文章写的,如下:
#!/bin/sh
# jar包位置 /opt/add
RESOURCE_PATH=/opt/add
# jar包名称带.jar后缀 ADD-app-1.0-SNAPSHOT.jar
RESOURCE_NAME=ADD-app-1.0-SNAPSHOT.jar
# 项目名称 add-app
PROJECT_NAME=add-app
# 多环境配置(dev、test、prod)
PROFILES_ACTIVE=test
tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -15 $tpid
fi
sleep 5
tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill -9 $tpid
else
echo 'Stop Success!'
fi
tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'App is running.'
else
echo 'App is NOT running.'
fi
rm -f tpid
nohup java -jar $RESOURCE_PATH/$RESOURCE_NAME --spring.profiles.active=$PROFILES_ACTIVE > $RESOURCE_PATH/$PROJECT_NAME.log 2>&1 &
echo $! > tpid
echo Start Success!
只需要改动上面注释的几行位置即可!如果想了解下基本的脚本写法,可以看看这个。
提醒:
有的老哥是在windows系统上面编辑的脚本,然后上传至服务器就运行不了了,具体原因在
这里。
还有一点需要注意的是运行脚本需要赋予权限,看
这里。
效果:
补充
Linux中运行SpringBoot项目,永久运行方法