环境要求:

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

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. vector auto

    #include <iostream>#include <vector>#include <string>using namespace std;using std ...

  2. Python核心技术与实战——六|异常处理

    和其他语言一样,Python中的异常处理是很重要的机制和代码规范. 一.错误与异常 通常来说程序中的错误分为两种,一种是语法错误,另一种是异常.首先要了解错误和异常的区别和联系. 语法错误比较容易理解 ...

  3. java Byte源码分析

    源码: public static int toUnsignedInt(byte x) { return ((int) x) & 0xff; } 原理: -128(byte) 原码:10000 ...

  4. express 设置跨域

    app.use(function (req, res, next) {     res.header('Access-Control-Allow-Origin', 'http://localhost: ...

  5. 32.密码学知识-SSL/TLS-9——2019年12月19日

    9. SSL/TLS "SSL/TLS --- 为了更安全的通信" 本章中我们将学习SSL/TLS的相关知识. SSL/TLS是世界上应用最广泛的密码通信方法.比如说,当在网上商城 ...

  6. websocket的通信原理

    首先什么是websocket? 1.websocket和http一样是一种通信协议,是HTML5的一种新的协议. 2.既然有了http协议了,为什么还会有websocket呢?是因为是为了弥补http ...

  7. win10系统迁移到新的硬盘

    笔记本换个硬盘,但是程序员在开发中需要各种环境配置,不想重装系统,重新系统容易,但是装各种软件和配各种环境就比较麻烦了,所以笔记本加固态硬盘,可以不用重装,直接"系统迁移"到新的硬 ...

  8. [USACO08FEB]连线游戏Game of Lines

    题目背景 Farmer John最近发明了一个游戏,来考验自命不凡的贝茜. 题目描述 Farmer John has challenged Bessie to the following game: ...

  9. [ZJU 1010] Area

    ZOJ Problem Set - 1010 Area Time Limit: 2 Seconds      Memory Limit: 65536 KB      Special Judge Jer ...

  10. 音频学习(一)-离线播放(AVAudioPlayer)

    最后更新:2017-05-23 方法 - (nullable instancetype)initWithContentsOfURL:(NSURL *)url error:(NSError **)out ...