Jenkins+Gitlab+Docker 自动化部署

Jenkins+GitLab+Docker 的CI/CD自动化部署是现代 DevOps 流程中的经典组合,能够实现代码提交后自动构建、测试和部署。

代码由gitlab管理,提交变更后,触发jenkins进行自动构建(这里可以进行将java应用进行maven打包或者前端文件的编译打包)完成CI过程,然后通过发布到服务器的docker中进行运行完成CD的过程。

整个操作要从部署gitlab服务器,jenkins服务器来做。我这边跳过服务器部署。直接做一个java+vue的前后端分离的程序进行部署。

一、服务器的免登配置

服务器免登之前已经讲过这里就不在赘述。

二、配置Jenkins服务器的java环境

由于要使用maven打包java程序 我们需要在jenkins中配置JDK和Maven环境。
进入jenkis系统管理 -> 全局工具配置->JDK或者Maven

image.png

image.png

image.png

这里可以使用服务器上已经安装的JDK或者maven 也可以自动安装。推荐使用手动在服务器上安装的,自动安装需要oracle账户。

配置完环境,需要配置环境变量 进入jenkis系统管理 -> 系统设置->全局属性,增加JAVA_HOME,MAVEN_HOME,PATH 三个参数。

image.png

二、构建一个自由风格的软件项目

构建的项目主要分为自由风格,maven项目和Pipeline 三种类型,Pipeline需要编写jenkinsfile脚本,适用于比较复杂的项目,自有风格的项目设置比较简单。我们今天就构建自由风格项目。


image.png
  • 这里填写项目名称及一些介绍


    image.png
  • 源码管理设置git仓库的URL,Credentials为仓库的账号或者秘钥,可以添加在jenkins的凭证管理里。Branches to build 填写需要构建的代码分支。


    image.png
  • 构建触发器是设置git线提交,这里自动发起构建的触发器。Push Events为监控提交事件,点击高级
image.png
  • 高级里面设置与gitlab交互的信息。Secret token 为gitlab webhook的秘钥。设置完这里要去gitlab设置webhooks,使用有项目权限的用户登录gitlab。设置->Webhooks


    image.png
  • 网址格式为:http://{jenkins url}/project/{项目名称}
  • Secret 令牌:Jenkins构建触发器生成的Secret token
  • 触发来源 ->推送事件 填写代码分支名称即可


    image.png
  • 保存后可以点击测试-> Push events 进行测试,返回200 即配置成功。


  • 构建可以配置shell脚本,也可以运行脚本文件。

以上配置保存后可以尝试首次构建

三、首次构建服务

image.png
  • 在项目中点击立即构建


    image.png
  • 在Console Output中查看日志
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容