本文主要记录如何在linux服务器上安装Jenkins,并使用jenkins做为持续集成工具将springboot项目部署到远程服务器。linux
以WebInsight项目为例git
能够在https://jenkins.io/download/下载Jenkins的最新版本。建议下载LTS(LongTermSuport)。我下载的是 jenkins.warweb
将下载的jenkins.war上传到服务器上,我安装的目录是/usr/local/jenkins,目录结构:spring
其中,home为jenkins工做目录,jenkins.sh是为了方便启动和中止jenkins而写的脚本(内容见 相关脚本 章节),这里我还将设置成开机启动服务,设置以下:shell
这时,就能够输入命令启动jenkins浏览器
到这里,jenkins就安装部署成功了,接下来就能够在web界面配置jenkins。springboot
浏览器中输入172.16.3.35:7076(即安装部署jenkins服务器的ip地址,端口号默认是8080,我配置的是7076),页面出现:服务器
首次访问jenkins须要输入管理员密码,此时能够到服务器终端控制台上查找密码输入便可:maven
接着会提示你选择要安装的插件,选择“Install suggest Plugins”便可,后续也可到插件管理中查找须要的插件安装:工具
插件安装完成后,按照提示设置管理员帐号就可使用了!
在 系统设置->插件管理->可选插件 搜索 Publish Over SSH
,选中点击当即安装便可安装。
在新建任务以前,须要作一些系统配置
2. 系统管理-全局工具设置:设置JDK,Git,Gradle工具等(需先在jenkins安装的服务器上安装对应工具,而后填写其对应运行路径)
新建任务
源码管理:输入项目的git路径,点击Credentials对应的Add能够输入git帐号密码,Branches to build为对应的分支
构建触发器:该部分能够选择定时构建,便可以设置日程,例如设置天天晚上8点构建等等,这里我暂时不须要。
构建:这里能够经过shell命令来执行构建(这里有个坑,从git上拉下来的项目代码自己在一个文件夹下(git不能直接拉子目录),直接执行gradle命令会致使找不到命令,因此能够经过shell命令先cd到工程目录下,而后在执行gradle命令,若是仍是报错找不到命令,就输入gradle执行的绝对路径),下图脚本就是先切换到项目根目录下,而后执行gradle命令进行打包。
构建后操做:构建后能够执行不少操做,例如发送邮件通知,发送代码审查报告,发送文件到远程部署等,下面咱们使用上面安装的Publish Over SSH插件将构建好的jar包传送到远程服务器上进行部署
1. 选择上面配置好的远程服务器;
2. source files:要上传的文件,此路径填写的是相对与jenkins该任务工做空间的相对路径,这里要上传的jar包在项目根路径下的build/libs路径下;
3. Remove prefix:上传时要去除的文件夹,即只上传jar包;
4. Remote directory:远程服务器的路径,即上传的jar包的保存路径;
5. Exec command:要执行的命令脚本,这里执行的是事先已经编辑好的start.sh脚本,脚本中就是备份部署等命令,见下脚本。
到这里,该任务就建立成功了,点击当即构建,就能够实现项目的构建部署了。
1. jenkins.sh:jenkins的部署脚本
2. start.sh:jar包部署脚本