博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot+Docker+Git+Jenkins实现简易的持续集成和持续部署
阅读量:5886 次
发布时间:2019-06-19

本文共 2122 字,大约阅读时间需要 7 分钟。

hot3.png

努力了这么久,但凡有点儿天赋,也该有些成功的迹象了。

前言

本篇文章引导你使用Jenkins部署SpringBoot项目,同时使用DockerGit实现简单的和持续部署。(项目地址:)

流程图如下:

  1. push代码到Github触发WebHook。(因网络原因,本篇使用)
  2. Jenkins从仓库拉去代码
  3. mavem构建项目
  4. 代码静态分析
  5. 单元测试
  6. build镜像
  7. push镜像到镜像仓库(本篇使用的镜像仓库为网易镜像仓库)
  8. 更新服务

Jenkins安装

下载jenkins

从下载对应的jenkins

初始化密码

访问本地:输入密码

选择插件

进入用户自定义插件界面,选择第二个(因为我们本次构建使用的为Pipelines

勾选与Pipelines相关的插件

等待插件安装完成

配置用户名和密码

全局配置

系统管理-》全局工具配置 配置Git,JDK和Maven

安全配置

系统管理-》全局安全配置

  • 勾选Allow anonymous read access
  • 取消防止跨站点请求伪造

新建任务

新建任务-》流水线

构建脚本

勾选触发远程构建 (WebHooks触发地址),填写简单的Pipeline script

#!groovypipeline{	agent any	stages {		stage('test'){			steps {				echo "hello world"						}		}				}}

测试脚本

立即构建

控制台输出

gitee集成WebHooks

添加SSH公匙

配置WebHooks

使用实现内网穿透

修改脚本

修改Pipeline script

#!groovypipeline{	agent any	//定义仓库地址	environment {		REPOSITORY="https://gitee.com/merryyou/sso-merryyou.git"	}	stages {		stage('获取代码'){			steps {				echo "start fetch code from git:${REPOSITORY}"				//清空当前目录				deleteDir()				//拉去代码					git "${REPOSITORY}"			}		}		stage('代码静态检查'){			steps {				//伪代码检查				echo "start code check"			}		}				stage('编译+单元测试'){			steps {				echo "start compile"				//切换目录				dir('sso-client1') {					//重新打包					bat 'mvn -Dmaven.test.skip=true -U clean install'				}			}		}		stage('构建镜像'){			steps {				echo "start build image"				dir('sso-client1') {					//build镜像					bat 'docker build -t hub.c.163.com/longfeizheng/sso-client1:1.0 .'					//登录163云仓库					bat 'docker login -u longfei_zheng@163.com -p password hub.c.163.com'					//推送镜像到163仓库					bat 'docker push hub.c.163.com/longfeizheng/sso-client1:1.0'				}			}		}		stage('启动服务'){			steps {				echo "start sso-merryyou"				//重启服务				bat 'docker-compose up -d --build'			}		}					}}

Pipeline的几个基本概念:

  • Stage: 阶段,一个Pipeline可以划分为若干个Stage,每个Stage代表一组操作。注意,Stage是一个逻辑分组的概念,可以跨多个Node。
  • Node: 节点,一个Node就是一个Jenkins节点,或者是Master,或者是Agent,是执行Step的具体运行期环境。
  • Step: 步骤,Step是最基本的操作单元,小到创建一个目录,大到构建一个Docker镜像,由各类Jenkins Plugin提供。

更多Pipeline语法参考:

测试

docker-compose up -d 启动服务

访问登录

修改内容效果如下:

更多效果图

代码下载

  • github:
  • gitee:

推荐文章


???关注微信小程序java架构师历程 上下班的路上无聊吗?还在看小说、新闻吗?不知道怎样提高自己的技术吗?来吧这里有你需要的java架构文章,1.5w+的java工程师都在看,你还在等什么?

转载于:https://my.oschina.net/merryyou/blog/1799317

你可能感兴趣的文章
Scrapy爬取内容保存Json文件(unicode转中文)
查看>>
Storm系列(五)DRPC实现远程调用
查看>>
作为菜鸟怎样快速的的学习微信小程序
查看>>
一次诡异的mysql乱码
查看>>
springmvc mybatis shiro构建cms系统
查看>>
MySQL8.0 新特性 top10
查看>>
大数据架构师必读:常见的七种Hadoop和Spark项目案例
查看>>
程序员笔记|如何编写优雅的Dockerfile
查看>>
牛客网上的前端面经
查看>>
从Chronometer中学习控件中的定时器生命周期
查看>>
丽江a货翡翠,揭阳a货翡翠
查看>>
gitbook 入门教程之使用 gitbook.com 在线开发电子书
查看>>
每周一个 Python 模块 | json
查看>>
讲个大部分数据结构和算法教科书中都不会讲的问题
查看>>
mysql优化 | 存储引擎,建表,索引,sql的优化建议
查看>>
阿里P7级架构师总结Spring核心模块及功能汇总
查看>>
Java初学者最佳的学习方法以及会遇到的坑(内含学习资料)!
查看>>
前端开发笔记
查看>>
332 Reconstruct Itinerary[PriorityQueue]
查看>>
java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统---服务网关zuul
查看>>