Jenkins+Git+Docker+K8s部署

准备工做前端

  1. Jenkins已安装
  2. Docker和K8s部署运行成功
  3. 代码管理工具使用Git

最近公司项目使用Jenkins+Git+Docker+K8s进行持续化构建部署,这里笔者整理了一下构建部署的相关操做,以便留存查看。shell

项目和工具介绍

这里有两个项目:前端和后台,一样都是使用Git代码管理工具,目前是使用所谓的微服务进行发布操做,结合Docker和K8s进行部署发布。后端

部署步骤

传统的服务发布步骤:

  1. 拉取最新的代码
  2. 使用ant或其余工具编译项目代码
  3. 将编译的项目代码(有些配置文件是不变的,须要覆盖),打包上传到tomcat或glassfish部署
  4. 重启服务

而使用jenkins以后,咱们只须要鼠标轻轻一点,便可完成1-4的操做;省时省力,缩短了咱们的构建时间,使得错误率大大下降。其中jenkins还能够根据项目实际状况,进行定时构建。tomcat

jenkins详细部署

新建项目-Genenral

咱们首先新建一个自由风格的项目,设置项目的名称,而后进行项目设置详情基础页面,如图服务器

如上图所示:在Gnenral中设置了项目的基本描述、构建结果保存以及参数化构建过程,其中[丢弃旧的构建]:是保存N次构建结果信息,而参数化构建,这里是直接获取Git的分支进行构建。这里使用的是插件[Git Parameter]进行参数化构建,首次使用需安装此插件。运维

丢弃旧的构建:即保存最近N次的构建结果,查看如图微服务

参数化构建:获取Git分支进行构建部署,如图工具

源码获取:Source Code Management

拉取最新的代码信息,这里使用的工具是Git,配置具体如图post

这里配置了Git的URL地址以及使用的帐号信息,其次还有就是拉取的分支信息,Git工具默认使用Jenkins自带的版本便可。ui

构建-Build

前端项目

这里执行构建的时候,前端项目使用的是shell执行命令,使用的命令以下

cd $WORKSPACE
yarn install --ignore-engines
yarn build

前端项目部署须要先执行此问题,具体的项目有不一样的执行命令,如图

后端项目

而通常后台,使用的是Maven进行构建的,编译命令以下

clean install -U -Pbeta -e

如图

Build-Post Steps

前面说过此项目是微服务搭建的,使用到了Docker和K8s,这里就用到了Docker。

先上图:

这里使用Docker有三个步骤

  1. 建立image:Creat image,说明是使用哪一个分支
  2. 推送image至服务器:Push image
  3. 删除原来的image:Remove image

重启服务

这里是使用Kubernetes进行服务的重启和发布,命令以下

kubectl patch deployment 项目名称 -p \
  "{\"spec\":{\"template\":{\"metadata\":{\"labels\":{\"date\":\"`date +'%s'`\"}}}}}"

具体执行命令信息能够参考运维或开发人员的脚本,如图

至此,使用Jenkins+Git+Docker+K8s完成了项目的部署,接下来进行构建的时候,能够直接点击[Build with Parameters]拉取不一样的分支进行项目构建部署,如图

这里只说明了的Docker和K8s如何配合Jenkins如何使用,更详细的使用方法和命令能够自行百度

相关文章
相关标签/搜索