Jenkins安装配置 远程发布SpringBoot项目
环境要求:
保证你的网络畅通。否则会遇到很多问题。
Java : 1.8.0_161.
Maven :http://maven.apache.org/download.cgi 3.6.1 下载完解压,配置环境变量:vim /etc/profile
MAVEN_HOME=/mysoft/maven
PATH=$MAVEN_HOME/bin:$PATH
export MAVEN_HOME PATH
生效配置文件 source /etc/profile
Git : https://github.com/git/git/releases 2.23.0
安装依赖的包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
下载源码包进行源码安装:
解压:tar zxvf git-2.23..tar.gz
mv git-2.23. git
cd git
编译安装:
make prefix=/usr/local/git all
make prefix=/usr/local/git install
配置环境变量
vim /etc/profile
加入export PATH=$PATH:/usr/local/git/bin
生效配置文件 source /etc/profile
查看目录:whereis git , 查看版本:git --version
Jenkins 安装:
下载地址:https://jenkins.io/zh/download/ 2.191

启动方法: java -jar jenkins.war 即可,如果要以后台进程的方式启动,改成nohup java -jar jenkins.war & 即可,启动过程中,它会将war包解压到~/.jenkins目录下,并生成一些目录及配置文件

我这边是直接吧war包放到了tomcat的webapps目录下,重启一下tomcat通过 192.168.1.101:8080/jenkins/ 来访问:

首先需要解锁jenkins ,这里密码到对应目录下拷贝进去即可,安装推荐的插件。

这里我们需要的插件是 Maven (Maven Integration),Git ,SSH(Publish Over SSH),GitHub Integration 等常用的插件,如果缺少插件可以到 Manage Plusins 中去安装:

Jenkins 基本配置:
基本配置中 JDK,Maven ,Git 的配置是必不可少的,在Global Tool Configuration 中配置(我部署在linux上,路劲均为服务器路径):





我们这里需要远程发布,所以我们这里还需要配置 SSH,在系统配置中 Configure System,首先我们需要在本机上生成私钥,设置目标服务器免密登录: ssh-keygen -t rsa

设置免密登录: ssh-copy-id root@IP

测试:

配置,这里的目录建议是 / ,不然后面会有影响:

测试是否成功:

创建一个 Maven Job:

创建完我们需要进行进一步的配置:首先,我这里是从GitHub进行源码管理,需要配置项目的远程仓库地址:


我这里采用的是父子工程的方式,所以我们需要指定对应的 Pom 文件进行项目构建:

接下去需要去配置 Post Steps :

source /etc/profile
project=springboot-study-1.0-SNAPSHOT.jar 对应的工程
dir=/mysoft/ 目录
pid=`ps -ef | grep $dir$project | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
kill - $pid
fi
nohup java -Xms64m -Xmx512m -XX:PermSize=32m -XX:MaxPermSize=512m -jar $dir$project --spring.profiles.active=dev >/dev/null >&&
就这样配置完成。
项目构建:
回到 My Views 进行代码构建:

可以到控制台查看构建情况:

当构建完成会出现以下日志:

然后到对应的服务器指定目录下查看是否出现 该Jar ,如果jar启动失败则需要查看项目是否有问题。这样就完成了简单的构建发布过程
Push代码后进行自动构建:
JenKins安装Gitlab Hook 两个Plugin插件。
GitHub收到提交的代码后要主动通知Jenkins,所以Jenkins所在服务器一定要有外网IP,否则GitHub无法访问,我的Jenkins服务器是部署在阿里云的云主机上,带有外网IP。

GitHub WebHook配置,地址就是上面这个:


配置触发器:

然后推一下代码就能看到构建
Jenkins安装配置 远程发布SpringBoot项目的更多相关文章
- jenkins安装配置及发布
1. yum install -y lrzsz vim net-tools 2. 下载jdk-8u131-linux-x64.tar.gz http://www.oracle.com/technetw ...
- windows jenkins 发布 springboot项目脚本
windows jenkins 发布 springboot项目脚本 1.关闭现有程序 (按端口关闭) [与按应用关闭 二选一] @echo off for /f "tokens=1-5&q ...
- jenkins安装-配置
jenkins安装-配置 注意: jenkins访问 用chrome浏览器 安装包下载:http://pkg.jenkins-ci.org/redhat/ (使用2.92版本的) 安装jdk: 1.8 ...
- CentOS安装+配置+远程
这篇博客我之前写在了csdn,转了过来,这篇是自己认为写的比较有技术含量的文章^_^ 最近和CentOS打了交到,其中遇到了很多问题,于是看了一些博客,解决了一些问题,但是都不是特别全面,所以想来一篇 ...
- SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、属性配置、多环境配置
1 InteliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到官 ...
- SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、yml属性配置、多环境配置、自定义properties配置
1 IntelliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到 ...
- jenkins maven 自动远程发布到服务器,钉钉提醒团队
jenkins 自动远程发布到服务器 1.安装jenkins 安装过程:自行百度 英文不好的,不要装最新版的jenkins.建议安装Jenkins ver. 2.138.4,此版本可以设置中文语言,设 ...
- Jenkins使用SSH远程发布
远程发布需要安装Publish Over SSH插件 比如我们的应用服务器都是通过tomcat用户启动程序,因此,在jenkin服务器上配置免密登录远程服务器tomcat用户 //生成密钥对 ssh- ...
- 利用Jenkins实现jdk11+Maven构建springboot项目
目录 原理图 前期准备 Jdk11安装 Jenkins安装 Maven安装 Jenkins的设置 插件安装 变量配置 搭建项目 1.通用配置 2.源码管理 3.构建触发 4.Maven的构建选项 5. ...
随机推荐
- 写了一个简单可用的IOC
根据<架构探险从零开始写javaweb框架>内容写的一个简单的 IOC 学习记录 只说明了主要的类,从上到下执行的流程,需要分清主次,无法每个类都说明,只是把整个主线流程说清楚,避免 ...
- RabbitMQ发送消息成功,但是接受不到消息
commom模块为mq配置模块 分了多模块后消息队列无法自动创建,发现原因竟然是SpringBoot没有扫描到common模块内的配置类. 我们在XxxApplication启动类上添加@Compon ...
- nginx的配置和基本参数说明
16 117 118 119 120 121 122 123 #运行用户 user nobody; #启动进程,通常设置成和cpu的数量相等 worker_processes 1; #全局错误日 ...
- MyEclipse XML & XML架构教程:XML Schema (XSD)编辑器
[MyEclipse CI 2019.4.0安装包下载] 1. MyEclipse中的XSD编辑 本文档介绍MyEclipse XML Schema(XSD)编辑器中的一些可用函数.XML Schem ...
- Python操作 Excel表格
python 读写 excel 有好多选择,但是,方便操作的库不多,在我尝试了几个库之后,我觉得两个比较方便的库分别是 xlrd/xlwt.openpyxl. 我使用openpyxl 安装: pip ...
- 两个jquery编写插件实例
(1) 封装基于jq弹窗插件 相信码友们对于$.fn.extexd();$.extend()以及$.fn.custom和$.custom都有一定的了解:我阐述一下我自己对于$.fn.custom和 ...
- node创建项目,要ejs模板引擎,不要jade怎么办?
创建项目时:express ejs blog,生成的是.jade文件怎么办?我想要的是ejs的呀 上述语句不仅名字不对,生成文件的格式也不是我想要的. 不妨试试:express -e blog 这下就 ...
- Flink Forward Asia 2019 - 总结和展望(附PPT下载链接)
11 月 28 - 30 日,北京迎来了入冬以来的第一场雪,2019 Flink Forward Asia(FFA)也在初雪的召唤下顺利拉开帷幕.尽管天气寒冷,FFA 实际到会人次超过 2000,同比 ...
- js判断浏览器的类型
我们很多时候都需要判断浏览器,下面就是一些常用的判断 var ua = navigator.userAgent.toLowerCase(); //用来判断移动端类型 var isWeixin = /M ...
- Java基础之方法详解
方法的所属性 在Java的语言中,方法相当于C语言中的函数,但是它与传统的函数也有着明确的不同:在结构化的语言中,函数是一等公民,整个程序是由一个个函数组成的:但是在面向对象的语言里,类是一等公民,整 ...