安装Jenkins

参考官网 https://pkg.jenkins.io/debian-stable/

这里我们使用Jenkins的官方提供的软件仓库,要使用官方的软件仓库之前必须将软件仓库的秘钥添加到本地

#添加官方软件仓库的秘钥到本地的apt秘钥中
$ wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -

将官方提供的软件仓库地址加入到本地的apt软件源中,本地用于存放软件源的文件在/etc/apt/sources.list

#将地址添加进本地的软件源列表
$ deb https://pkg.jenkins.io/debian-stable binary/

更新我们本地的软件源缓存,然后直接安装jenkins

$ sudo apt-get update
$ sudo apt-get install jenkins

启动jenkis

sudo /etc/init.d/jenkins [start|restart|stop]

建立软连接

如果启动失败,建立jdk环境软连接

ln -s /home/jdk1.8.0_141/bin/java /usr/bin/java

安装jenkins

打开我们的浏览器输入jenkins的服务器地址,在这里我的是192.168.1.17
http://192.168.1.17:8080
但是呢有时候这个端口就会被万恶的tomcat占用我们不得不修改jenkins的端口(此时如果你打开的是jenkins此步骤可以省略)
修改jenkins端口

$ sudo vim /etc/default/jenkins

#修改如下内容
HTTP_PORT=8085

#重启jenkins服务
$ sudo /etc/init.d/jenkins restart

首次进入jenkins如要输入密码,密码位置:/var/lib/jenkins/secrets/initialAdminPassword

 

插件安装

点击“Install suggested plugins”,即安装推荐的插件:

开始安装插件,安装插件比较慢,要多等一会儿

额...科学上网会快很多哦!!!

创建管理员账户

 

创建任务

需要安装的插件默认安装就好了

第二部分:Jenkins集成springboot

进入Jenkins后,添加任务

选取maven项目,如果没有maven项目的话,可以去插件管理中去下载,在集成这部分前,服务器上要安装好git,maven,git版本最好大于1.7,以及jdk,然后在Jenkins中的全局工具配置中配置jdk以及maven的路径:

 

 

创建完任务后:进入任务配置

执行shell文件

上面shell文件路径记得替换自己的shell路径,并且给定shell执行权限

chmod 777 [shell文件路径]

shel文件内容

#export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。
export BUILD_ID=dontKillMe
 
#指定最后编译好的jar存放的位置
work_path=~/java-work
 
echo work_path=${work_path}
 
#判断文件夹是否存在,不存在就创建
if [ ! -d "$work_path" ]; then
        mkdir ${work_path}
fi
 
#Jenkins中编译好的jar位置
jar_path=${WORKSPACE}/target
 
#Jenkins中编译好的jar名称
jar_name=${JOB_NAME}.jar
 
#判断文件夹是否存在,不存在就创建
if [ ! -d "$jar_path" ]; then
  jar_path=${WORKSPACE}/${JOB_NAME}-web/target
  jar_name=${JOB_NAME}-web.jar
fi
 
 
#pid文件
pid_path=${work_path}/${JOB_NAME}.pid
 
echo pid_path=${pid_path}
 

if [ -e "$pid_path"];then
#获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程
	pid=$(cat ${pid_path})
    #杀掉以前可能启动的项目进程
	kill -9 ${pid}
fi
 
 
#进入指定的编译好的jar的位置
cd  ${jar_path}
 
#将编译好的jar复制到最后指定的位置
cp  ${jar_path}/${jar_name} ${work_path}
 
#进入最后指定存放jar的位置
cd  ${work_path}
 

 
#启动jar,指定SpringBoot的profiles为test,后台启动
java -jar -Dspring.profiles.active=test ${jar_name} &
 
#将进程ID存入到shaw-web.pid文件中
echo $! > ${pid_path}

部署vue项目

参照https://blog.csdn.net/jonsonler/article/details/81317352

插件管理中心安装NodeJS插件

新建一个自由项目

配置NodeJS和部署的shell

具体shell如下

//应用路径
work_path=/usr/hycy-admin-web

echo work_path=${work_path}

if [ ! -d "$work_path" ]
then
	mkdir ${work_path}
fi

app_path=${WORKSPACE}

app_dist=${app_path}/dist

if [ -d ${app_dist} ] 
then	
	rm -r ${app_dist}
fi

echo 'app_dist='${app_dist}

echo '正在打包应用,请稍后...'

npm install

npm run build

if [ ! -d ${app_dist} ]
then
	echo '构建失败'
else
	echo '构建成功'
	echo '正在部署应用'
	rm -r ${work_path}/*
	mv ${app_dist}/* ${work_path}
fi

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐