前言:该系列文章,围绕继续集成:Jenkins+Docker+K8S 相干组件,实现自动化治理源码编译、打包、镜像构建、部署等操作;本篇文章次要形容 Jenkins 根底用法。
一、Jenkins 装置
1、环境部署
下载 Jenkins 包
留神这里间接下载 war 文件,以 Java 服务的模式启动。
- 环境:war 运行
- 版本:2.289.3
- 类型:Generic Java package (.war)
启动命令
java -jar jenkins.war --httpPort=8090
启动日志
Jenkins is fully up and running
拜访本地端口:8090
该页面会提醒初始登录明码的地位,查看该文件中初始密码,并实现登录。
/.jenkins/secrets/initialAdminPassword
装置举荐插件
登录之后先把举荐的插件装上。
创立用户
插件装置实现之后会提醒创立用户。
账号:admin 明码:admin
这样初始化实现。
重新启动:restart
Jenkins_url/restart
2、配置与插件
根底配置
关上:Manage-Jenkins
选项,配置 Global-Tool-Configuration
选项:
- 查看 JDK 装置目录
/usr/libexec/java_home -V
- 查看 Git 装置目录
which git
- 查看 Maven 装置目录
mvn -v
配置组件:JDK、Git、Maven,采纳开发环境的组件版本;
插件装置
装置如下插件:
1、Maven 插件
Maven Integration plugin
2、Pipeline 插件
Pipeline Utility Steps
二、本地 Git 打包
简介:基于 Jenkins 实现本地的 Git 仓库我的项目打包;
1、新建 Item
- 工作名称:MavLoc,解决本地 maven 工程;
- 工作类型:抉择构建 maven 我的项目;
2、构建记录治理
放弃构建的天数:3 天,放弃构建的最大个数:10 个;
3、构建过程
前置 Pre-Steps
步骤,这里执行一次 maven 版本查看:
构建 Build
步骤,这里间接写我的项目的 pom 门路,留神执行的 maven 命令:
clean package -Dmaven.test.skip=true
后置 Post Steps
步骤,留神抉择构建胜利后才执行,自行疏忽这里 shell 语法的不入流组合:
#!/bin/bash
BUILD_ID=dontKillMe
# 定义目录
AUTO_PATH=/ 我的项目门路 /butte-auto-parent/
# 挪动 Jar 包
cd $AUTO_PATH/auto-client/target/
pwd
mv auto-client-1.0-SNAPSHOT.jar $AUTO_PATH
cd $AUTO_PATH/auto-serve/target/
pwd
mv auto-serve-1.0-SNAPSHOT.jar $AUTO_PATH
# 启动服务
cd $AUTO_PATH
nohup java -jar auto-client-1.0-SNAPSHOT.jar &
echo "run auto-client ..."
sleep 20s
nohup java -jar auto-serve-1.0-SNAPSHOT.jar &
echo "run auto-serve ..."
4、执行构建
上述配置实现后,关上工作页面,执行如下操作:
- Build Now:执行下面的构建工作;
- 构建 #ID:查看控制台输入的日志;
这样就能够通过 jenkins 实现本地我的项目的打包和启动了。
三、API 触发工作
1、用户令牌
简介:通过配置用户 API 拜访的 token 令牌,脱离 jenkins 控制台,间接触发构建工作;
进入用户面板的设置选项,配置API Token
:
留神这里生成令牌后要立即复制下来,页面会提醒 token 无奈复现。
2、工作令牌
工作配置的构建触发器模块,设置近程构建的令牌:
下面曾经给到 token 的应用形式。
3、脚本触发
通过如下形式,间接触发上述构建工作的流程:
curl http:// 用户: 令牌 @Jenkins_Url/job/MavLoc/build?token= 工作令牌
这里通过脚本间接申请 URL 的形式触发流程。
四、打包 Git 我的项目
1、配置仓库
创立 MavGit 工作,这里不做过多的配置,与本地仓库相比,只是把仓库地址换成 Gitee 地址,只配置仓库 url 和分支即可,其余采纳默认:
因为是凋谢的仓库地址,所以不必配置账号密码,默认指定 master 分支,而后执行 build 构建。
2、查看空间
下面流程执行完后,查看 MavGit 的工作空间:/.jenkins/workspace/MavGit
:
这里能够显著发现,仓库的代码曾经被 pull 下来,并且实现了主动打包流程,后续联合 shell 脚本实现 jar 启动治理即可。
同系列文章:┃ 服务部署公布 ┃ 灰度模式 ┃ 自动化流程 ┃ 消息中间件革新 ┃ 微服务组件二次浅封装 ┃
五、源代码地址
GitEE·地址
https://gitee.com/cicadasmile/butte-auto-parent
Wiki·地址
https://gitee.com/cicadasmile/butte-java-note/wikis