环境要求:

  保证你的网络畅通。否则会遇到很多问题。

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项目的更多相关文章

  1. jenkins安装配置及发布

    1. yum install -y lrzsz vim net-tools 2. 下载jdk-8u131-linux-x64.tar.gz http://www.oracle.com/technetw ...

  2. windows jenkins 发布 springboot项目脚本

    windows  jenkins 发布 springboot项目脚本 1.关闭现有程序 (按端口关闭) [与按应用关闭 二选一] @echo off for /f "tokens=1-5&q ...

  3. jenkins安装-配置

    jenkins安装-配置 注意: jenkins访问 用chrome浏览器 安装包下载:http://pkg.jenkins-ci.org/redhat/ (使用2.92版本的) 安装jdk: 1.8 ...

  4. CentOS安装+配置+远程

    这篇博客我之前写在了csdn,转了过来,这篇是自己认为写的比较有技术含量的文章^_^ 最近和CentOS打了交到,其中遇到了很多问题,于是看了一些博客,解决了一些问题,但是都不是特别全面,所以想来一篇 ...

  5. SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、属性配置、多环境配置

    1 InteliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到官 ...

  6. SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、yml属性配置、多环境配置、自定义properties配置

    1 IntelliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到 ...

  7. jenkins maven 自动远程发布到服务器,钉钉提醒团队

    jenkins 自动远程发布到服务器 1.安装jenkins 安装过程:自行百度 英文不好的,不要装最新版的jenkins.建议安装Jenkins ver. 2.138.4,此版本可以设置中文语言,设 ...

  8. Jenkins使用SSH远程发布

    远程发布需要安装Publish Over SSH插件 比如我们的应用服务器都是通过tomcat用户启动程序,因此,在jenkin服务器上配置免密登录远程服务器tomcat用户 //生成密钥对 ssh- ...

  9. 利用Jenkins实现jdk11+Maven构建springboot项目

    目录 原理图 前期准备 Jdk11安装 Jenkins安装 Maven安装 Jenkins的设置 插件安装 变量配置 搭建项目 1.通用配置 2.源码管理 3.构建触发 4.Maven的构建选项 5. ...

随机推荐

  1. UVa11538 A Chess Queen

    A Chess Queen Problem A Chess Queen  Input: Standard Input Output: Standard Output You probably know ...

  2. 关于 const char *ptr,char const *ptr,char *const ptr 的讨论

    对于每个做C/C++的伙伴来说,面试中少不了关于const 的考察,尤其是对于刚毕业的新人. 今天听见同事在讨论这个问题,就随手写一下自己的理解.希望对大家又所帮助. 首先来说一下char *ptr: ...

  3. redis-5.0.5 集群部署

    之前写过一套基于redis-4.0.6版本的测试集群部署 https://www.cnblogs.com/mrice/p/10730309.html 最近生产环境需要部署一套redis-5.0.5版本 ...

  4. pandas数据排序(series排序 & DataFrame排序)

    # pandas数据排序 # series的排序: # Series.sort_values(ascending = True,inplace = False) # 参数说明: # ascending ...

  5. 设计模式Design Pattern(3) -- 责任链模式

    什么是责任链模式? 责任链模式(Chain of Responsibility Pattern):请求知道公开接口,但不知道那个具体类处理,这些具体处理类对象连接成一条链.请求沿着这条链传递,直到有对 ...

  6. SQL Server清理索引碎片

    DECLARE @SchemeName NVARCHAR(MAX)=N''; DECLARE @TableName NVARCHAR(MAX)=N''; DECLARE @IndexName NVAR ...

  7. 安装vue-cli脚手架项目

    1,下载安装node.官网下载后,重新打开cmd再打开. 命令:node -v检测版本. 2,安装vue-cli: 命令:npm install --global vue-cli  .根据安装情况,会 ...

  8. 用 IDEA工具导入SVN项目。 步骤一:选择VCS

    Intellij IDEA是目前主流的IDE开发工具,工程项目导入也是必不可少的操作,本文讲述如何用 IDEA工具导入SVN项目. 步骤一:选择VCS 步骤二:打开SVN Repositories 在 ...

  9. qt学习(一)qt三个文件函数的框架

    学到点什么, 而不是复制着什么, 每天敲着别人给的代码,苦涩得改完bug, 就这样一天天的过去, 实质上并没有学到什么, 别人的思想只是拿来借鉴, 你的思想是好是坏都是你的, 不用急着抛弃自己. 从q ...

  10. PHP上传一个文件夹

    该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开始. 如何分 ...