粉丝173获赞411

大家好,最近降温了,各位一定要记得多穿点衣服哦。然后我这里简单分享一下使用杰克斯如何去部署我们的加号项目。在杰克斯里面我们可以配置几个动态删除去方便我们构建项目,比如说我们以哪一个分支去拿取代码去部署。 在微服项目中,我们可以去配置要构建的服务名,比如说系统,或者说像我们的一个网关授权等等,这等我们可以将项目中要构建的一些服务配置到我们的监控之中,方便我们去选择构建指定的服务。 然后是我们勾结完服务之后,我们可以去配置发布到哪一台机器,也可以是多选,然后是配置加瓦钢架运行时的参数,比如说我可以给大家限制一些内存,但我这里六十四兆是最小的一个运行内存,这里只是一个 demo。 再者我们可以去配置 是否跳过构建,因为有些时候我们已经构建好我们的一个多考容器镜像了,那这个时候我们可以去直接去部署我们的一个项目,适用于在项目中我们的代码没有产生任何变化的情况下,我们可以直接运行镜像到我们的指定机器上面去。 以上几个参数便是个人觉得在项目中比较实用的一些动态参数了,大家如果说有自己的一个需求,可以去定制这些参数。 大家如果说对尖刻子的配置感兴趣的话,可以去参考一下我这个仓库,在这个仓库下面,嗯,根据这个路径可以去找到尖刻子这个章节啊,这里面有包括的一些尖刻子的插件,以及我们相关的一些配置, 比如说他的一个安装参数化构建以及远程服务器部署,还有我们邮件通知以及多个费用加 cusfio, 促使我们的微服到多台服务器短短之类的。最后说一下,成都今天真的开始变得很冷了,大家一定要多穿点衣服,不要感冒了。

好,这个小节我们来讲一下这个 jacon's pipeline 当中参数化构建这块儿的一个知识点。呃,那么本课件呢?我发布到我账号同名学量变成手机的 csdm 博客上面啊,需要的自取。 那我们言归正传, paperline 当中我们肯定会涉及到一个参数化的一个构建,也就是我通过呃呃指定不同的参数值啊,来让这个呃 paperline 这个流水线,这个角度啊, 沿着我们希望的这个轨迹去运行,对不对?那就是动态的配置,这个拍拍耐其实就动态化参数构建,动态参数化构建,那这里面首先在拍拍耐当中,当然我这 是一个声明式,不是脚本式的这个 peverline 啊,声明式的 pepperline 在这里面直接提供。呃,直接写这个 parameters 到里面去指定这几种类型,那么常用的就是有斯俊类型,有布尔类型,有这个 choice, 也就是你把它理解成就是 htm 当中一个 snack 啊, snack 让你选择啊,提供几个选项让你呢选啊, d, u a, test, p, l d 啊,这样这些环境啊,这个就可以做成一个 choice, 也就是这个 啊,选择型的,这个参数的型布尔类型啊,是否部署到生产环境啊,那这个位置你就可以设置成一个布尔类型啊,玻璃这类型,那就是使用的最广泛的啊,基本上每个参数都可以设置成这个 string 类型啊,而且很多场景都会用到它啊,它这里它有几个属性,也就是说参数的名称是 name 啊, default y 六,如果不指定它的值,不给定它的值的话,它的默认值是多少啊? description, 也就是对这个参数进行一个描述啊,它到底用来干嘛的? 那这三类参数呢?你都啊都有这三个属性啊,那么这里面你要要,如果要使用这里面的参数呢,就是多了 perimeter 的词啊,你把这个参数名称啊,一般 啊,我们约定俗成的就把它定义成一个大写的啊,大写的这个参数啊,这边这一看的话,那就知道哦,这是一个参数,包括我们环境变量,因为啊,也是的, 可以,基本上我们都会建议定义成大写的,如果你引用的话,他那里环境变量的话,就是多了一人微点多少多少,那这个因为这环境变量呢,你就没法再触发这个接根词 做不的时候啊,你去动态的指定这个参数的值啊,只是在这个拍完赖当中,他这里他给了你一个啊,给了你一个变量啊,让你去维护这个变量啊。 好,我们来看它用法就是这么简单,就直接就是多了 pyrameters, 在 permanent 当中,这个 when 就相当于是 if 啊,比如说这里面的 when expression, 这 pare parents deploy to power d 为处的话啊,那我就触发这个阶段,就是执行这个阶段,这个 在一起 deploy 这个 stage 啊,问,就相当于是衣服啊,你就啊理解成衣服就行了。好,这是三个参数,三个参数,那刚刚其实已经讲了, 那么你在呃执行这个旧部的时候,你手动出发的时候,那就会让你去填这个参数的值,当然建议呃尽量给这些参数,给另一个默认值啊,给另一个默认值,这样的话,即使你 不输入他,也不影响他的一个执行,对不对?你可以直接就是啊,直接点点立即构建啊,那么你再点直接提交啊,那么他就他就出发了。好,这是 是这个是 carplay 当中 parameter 是参数化构建的一个基本的一个视力。呃,课件呢?我就发布到我个人账号,同名的。呃,四 s 店博客啊,寻找别人手机,有需要的话自取。

教你如何配置环境变量,首先我们来看一下没有环境变量的状态是什么效果,打开命令行界面, 输入 a, b, c, t, x、 t, 会提示不是内部或外部命令。我们再随便打开一个软件的启动文件所在位置, 输入启动文件名, 也会提示不是内部或外部命令,这就是因为没有配置环境变量, 所以输入文件名无法打开文件。接下来我们来配置环境变量,首先复制启动文件所在的路径,然后点击此电脑右键,打开属性,点击高级系统设置,再点击环境变量,然后 双击 path, 把刚刚复制的路径粘贴进去就可以了,再点击确定保存操作环境变量就配置成功了。我们再来验证一下,打开一个新的命令行界面, 再打开启动文件所在位置,输入文件名就可以打开启动文件了。 我们再看下配置前和配置后的区别, 配置前会提示不是内部或外部命令,配置后就可以通过命令名打开文件了。 我们再打开桌面的文本文件, 会提示不是内部或外部命令,是因为也没配置环境变量。我们点击桌面的文本文件右键属性,复制所在位置的路径, 再点击此电脑右键属性,点击高级系统设置,点击环境变量,双击 pass, 把刚刚复制的路径粘贴到这里面,然后点击确定,按 牛保存操作。 我们再来验证一下效果,打开一个新的命令行界面, 在新的命令行界面输入 a、 b, c, t、 x、 c, 就可以通过文件名打开桌面的文本文件了。 我们在看下没配置的时候会提示不是内部或外部命令,我们再看下配置环境变量的概念和作用,还有注意事项。

登录 jk 四之后,首先来配置 jdk 和 mate, 这里你点击右上角这个小齿轮的按钮 进来,先来点击系统配置,这个是容器内部的地址,待会配置的时候需要用到,然后你再点击系统管理,找到全局工具配置,点进来,它这里有个 jdk 安装和 mate 安装,我们首先来安装 jdk, 这里给它取个笔名 jdk 八,这个路径是容器内部的路径,先放在这里。 配置的时候,我们需要把 jdk 和 mate 复制到宿主级的映设目录上面, 并把它命名成 jdk, mate 也是一样的。 然后的话这里是 jdk 这个目录,这里它没有报错,然后点一下应用,每文也是一样的,这里不要选择自动安装, 这里选择如果你路径对的话,它下面不会出现任何的提示信息。然后配置完成之后应用,然后点保存, 在运行流水线的时候,这两个环境的话还有个小坑,到时候遇到的话我再告诉大家。

首先登录 jesus, 之后点击新建任务,这里取一个 test 这个名称,然后这里我们选择构建一个自由风格的软件项目,然后点确定, 上面这些描述可以不用写。这里的话点 get, 这里的话我们需要一个仓库, 这个是一个 get 的 仓库地址,如果你是第一次,那么这里需要添加一个账号, 添加完成之后保存,这里选一下刚才创建的账号就可以, 这里的话拉取的是 master 分 支,这些都不用选,这里增加构建步骤,这里我们选择执行效,使用每本配克机进行打包, 然后应用,然后保存,然后点击立即构建项目,这里它出现错误了,我们点进去来看一下它控制台输出的内容, 这里他报了这个眉尾命令找不到,那么这里的话我们还要去配置一下眉尾, 这里选择系统管理,然后点击这个系统配置,复制一下这个目录往下滑,这里找到这个, 这里找到全区属性,这里有个环境变量,然后把它打个勾,这里的话我们增加三对, 第一对是 java home, 然后是 gdk 它这个路径。第二个是 make home, 这里还要把这些环境变量给导出来, 首先是 java home 下面的 b, 这里注意要使用冒号啊。接着是 make home, 写完成之后点击应用,然后保存, 这个时候我们再来构建我们这个项目, 这里可以看到它就已经开始在进行打包, 这个视频到这里就结束,下个视频我们讲怎么来运行这个项目。

上节课我们讲解了如何通过 jenkins 来构建和部署一个简单的 java spring boot 项目,从代码拉取、构建、打包、测试到部署上线,包含了一个完整的 c i c d 流水线流程。 但是在实际工作中有一种更加好用的方式来管理和维护这些流水线任务,那就是使用 jenkins file。 junkies file 是 一个文本文件,用来定义 junkies 流水线的构建、测试和部署的过程。它使用 groupy 语言编写,可以让我们把流水线的配置和代码放在一起,这样就可以更好的进行版本控制和协助开发。下面就来看一下 junkies file 的 使用方法。 首先打开 junkies 的 主页面来新建一个流水线任务,任务的名称可以随便填写一个任务类型还是选择流水线,然后点击确定按钮, 进入到流水线的配置页面。之后在触发器这里,我们选择一个螺旋 s c m 下面的表达式,这里设置为每三分钟检查一次代码库是否有更新,有的话就触发固件。 流水线定义这里选择下面的从 i c m 拉取流水线脚本。 i c m 类型,选择 git 仓库地址,填写之前的 gitap 地址。评剧这里因为没有配置,所以下来列表里面是空的,我们点击旁边的添加按钮来添加一个新的评剧。选择 jenkins 这个评剧是为了让詹克尔斯能够访问 gigap 仓库,之前我们已经演示了如何通过 sss 密钥的方式来连接到 gigap, 这次再给大家介绍另外一种更加通用的方式,就是使用 gigap 的 token 来进行连接, 选择用户名和密码的方式,这里的密码部分就是 github 生成的一个 token。 回到 github 的 个人设置页面,点击右上角的头像之后选择 settings 选项,在左侧菜单栏里面拉到最下面,选择开发者设置, 然后选择最下面的这个 personal access token, 这里还没有生成过 token, 直接点击生成按钮来生成一个名称,可以随便输入一个,能记住就可以。 过期时间,这里选择三十天或者七天都可以。下面的权限部分我们至少需要勾选上仓库相关的权限,也就是 rapper 这部分, 其他的部分如果有需要的话也可以勾选上,然后拉到最下面,点击生成 token 按钮,就会生成一串 token, 我 们把它复制下来,注意这个 token 只会显示一次,如果忘记了的话,那只能重新生成一个新的 token。 另外这个 token 就是 相当于你的密码,不要随意泄露给其他人, 我这里演示完之后也会把它删除掉。然后回到 jenkins 的 屏具添加页面,用户名,这里是 github 的 用户名下面密码的部分,把刚刚复制的 token 粘贴进去 id, 这里可以随便输入一个标识符,然后点击添加按钮,这样屏具就添加好了。再来点一下屏具的下拉列表,选择刚刚添加的这个新的屏具。 指定分支,这里需要注意一下,一定要和我们 github 仓库里面的分支名称保持一致,这里默认是 master 分 支,但是 github 仓库里面主分支的名称已经改成 main 了,我们回到 github 页面来确认一下,搜索一下仓库的名称, 可以看到这里的主分支名称是 may, 原因主要是出于一些历史和政治方面的考虑,详细的原因这里就不过多解释了,知道的同学可以弹幕一波。回到人名界面,把分支名称改成 may, 下面脚本路径这里保持默认的人名 file 就 可以了。这个人名 file 文件待会儿我们会放在项目的根目录里面,最后点击保存,流水线任务就配置好了。 接下来打开一个 vsco 的 文本编辑器,新建一个文件,并且把它命名为 jenkins file, 注意文件名的大小写一定要和这里保持一致,并且没有任何的文件扩展名。从命名之后可以看到它的图标就变成了 jenkins 的 这个管家图标,说明 vsco 的 已经识别出这是一个 jenkins file 文件。 接下来直接把上节课的流水线脚本代码复制过来粘贴进去。保存之后还需要把它提交到 github 仓库里面, 直接在 vs code 的 版本控制页面里面输入提交信息,然后点击提交按钮,接着点击同步按钮,把代码推送到 github 上。好的,推送成功了,回到 github 页面来刷新一下, 可以看到这里已经多了一个 junkings file 文件。接下来我们回到 junkings 页面,这个时候如果等待三分钟左右的时间, junkings 就 会自动检测到代码有更新,然后自动触发构建任务。当然时间关系这里我们就不等了,直接点击立即构建按钮来触发一下, 然后可以点击下面的进度条图标来查看具体的执行过程, 可以看到流水线任务正在执行,并且已经开始构建了, 然后是测试和发布部署的阶段,我们并没有在 junkkins 里面配置任何的构建步骤,只是在项目仓库里面添加了一个 junkkins file 文件, junkkins 就 能够自动识别并且执行了里面定义的流水线脚本, 这就是 junkkins file 的 主要作用。好的,执行成功了,说明我们的 junkkins file 文件配置是没有问题的。 那后面当我们每次修改项目中的任何代码文件之后,只需要把修改后的代码提交并且推送到 github 上面, johnkins 就 会自动检测到代码的变化,然后自动触发构建和部署,实现真正的持续集成和持续交付。比如我们现在在项目里面修改一下代码, 修改一下主页面的显示内容,添加一行说明文字 保存之后,再回到 johnkins 页面重新触发一下。构建 需要一点时间,我们稍微等待一下, 可以看到这次的构建也是成功的。然后回到远程服务器上面来刷新一下。好的,没有变化,我们来看一下为什么 哦,这里修改的代码忘记提交到 github 上面了,我们来提交一下。提交内容随便写一下,然后点击提交和同步按钮,把修改内容直接推送到 github 上,稍等一下。 好的,提交完成了,我们再回到 jackkins 页面,再次点击立即构建按钮来触发一下,需要一点时间,我们稍微等待一下。 时间关系这里我们来快进一下。好的,构建完成了,我们再回到远程服务器上面来刷新一下,可以看到这次页面已经变成了最新的内容, 说明 jackkins 已经成功把最新的代码构建并且部署上线了,那以上就是 jackkins file 的 一个最基本的使用方法。最后我们再来点击右上角的 blue ocean 按钮,来看一下这个流水线任务在 blue ocean 插件里面展示的效果。 可以看到流水线的各个阶段,包括拉取、代码构建、测试、代码质量分析和部署,每个阶段的执行状态都一目了然。 点击每个阶段下面的步骤,还可以看到每一步的具体的日制输出,这样排查和定位问题就非常的方便。在上面的制品这里还可以看到最后的构建产物和流水线的执行日制,点击一下就可以下载下来,非常方便。 在测试这里可以看到测试报告的详细内容,包括测试用力的通过率和失败的用力详情。 在改变这里还可以看到每次构建的变更内容,包括每次提交的代码差异,这样我们就可以清楚地知道每次构建都包含了哪些代码修改,方便我们进行提交评审,版本回溯或者问题排查。好的,以上就是 johnny's file 的 基本使用方法。

项目打包完成之后,接下来要做的就是部署,这里需要借助一个插件,点击系统管理,找到插件管理,到这个插件商店里面来找,我的已经安装过了,所以我点这个给你看一下, 这里要装的是这个插件,这个插件安装完成之后,重启一下 jkins, 然后回到系统管理,找到系统配置, 在页面上搜索 s s h, 安装完成之后,它会在这个页面上显示这一个,那么这里你点到下面新增这个是名称,这个是 ip 地址,这个是账号, 然后密码的话,你点击高级选中这一个,这里输入密码就可以。这些都弄完成之后,你点应用保存之后就可以。接下来我们回到项目那里,点进去点击这个项目的配置, 然后滑到最后面,这里的话我们添加一个构建后的操作选择,这一个 这里我们打包后的名字叫做 t get, 路径是星点架,然后把它这个前缀去掉,移到我们这个账号的根目录下面,然后执行一个命令。 s h, 我 这个是一个校脚本, 下面来看一下我这个需要脚本里面包含的东西。首先我把这个 java 的 进程找到,然后的话如果他在运行,那么就把他给杀掉,然后的话再来把这个夹包给运行起来,下面来点击立即构建, 这里可以来看一下,目前我这个目录下面只有这个项目,构建完成之后,他这里的话还会多一个夹包, 这个时候构建完成,这里多了一个架包。构建完成之后,我们来访问一下这个项目的一个测试接口, 可以看到这里也说出了这个接口的内容,那么说明我们这个部署是成功的,到这里使用 jcn 四部署打包后的架包就演示完成。最后给大家推荐几份实战手册, 这几份手册和这个项目是相辅相成的关系,手册里面包含了实战实力,而项目里面告诉你这些实战实力是怎么去应用的。 然后再给大家推荐一份关于麦克斯理论知识讲的比较好的书籍,作者的话非常用心,把一些晦涩难懂的知识都讲的比较清晰易懂。手册和书籍我都放到自己的橱窗了,项目的话过一段时间也会在橱窗上线。