00:00
嗨,同学们,刚刚呢,我们已经完成了从gate服务器上把代码拉回来,然后呢,我们去把它呃执行这个自动化的构建,通过may问呢,去构建成一个炸包,然后接下来呢,现在只差最后一步了,就是把这个炸包呢给它给丢到我们这个测试服务器上,那我们的最简陋版的这种持续集成呢,就已经能够这个呃完整的运行了,那么接下来我们去配置一下这个test server。啊,这其实也没什么特别好配置的,我们只需要有这么一个Java执行的环境就可以了,这就是个test server,我们把它给启动一下。然后这台机器上呢,应该也已经装了这个Java应用环境,其实只需要GRE就可以,因为你运行的时候呢,不需要JDK的是吧。然后接下来呢,我们登进去看看啊,这台机器的IP是多少。A pad,看一下这台机器是104哈,我们连一下。
01:07
104,应该是这个啊,之前装过Tom cat是吧,然后把这些没用的东西呢,我们全都给他给删掉是吧,RM。杠2F型号。现在看啥都没有了啊,那么这里边有没有Java环境呢,Java。没问题,这边也是JDK1.8,那么我们接下来这个目标服务器就就就用这台机器了,我们把这个炸包给它扔到这台机器上。那么在扔这台机器上啊,用我们原来的这种,呃,传统的方法呢,已经不行了,那么需要额外的再安装一个插件,就是在我们的上。之前呢,我们已经装过的插件了,是吧?啊装这个其他插件也是我们从这个这个这个plugin manager里边去找就可以了,但这可选插件里,这里边需要这么一个插件叫SSH publish。
02:07
Pub历史搜一下。嗯。历史SSH。这诶这么搜也搜不着publish啊,这呢publi是over SSH啊,这就是发布完之后呢,通过SSH去连到另外一台主机,然后我们把这个炸包呢,给它给扔过去,前面点勾啊呃,也可以点一下查看一下这个插件的。详细情况点勾之后呢,Install without restart,然后他就开始装了。等等就会被他装到稍微等一下,然后这个插件安装的其实也不少,对吧,69000个。接近于7万个。嗯哎,OK,搞定搞定之后呢,接下来我们来配置一下它。
03:00
在我们刚刚这个项目里边,你先退到dashboard的这个位置,然后点一下这个项目名称,点开之后呢,可以去重新去配置,然后在这个位置有这个构建后的操作。注意看。在构建后的操作这一部分里啊,这这不是这个post step,在提交完之后的这一部里,如可以添加另外一个选项叫send file or commands over SSH,这就是我们刚刚装的那个插件啊,默认它是不带这个东西的,然后点完之后呢,看send file orcute。呃,Command over s sh这么刚刚安装那个插件对吧,SSH publish这里边呢,我们需要去配置一下这个服务器是吧。嗯,SSH server这个name里边呢,你看我们现在往下拉,这里边儿是空的。对吧,现在找不着什么东西,这个位置呢,呃,显示的应该是这个服务器的列表,现在呢,它没有能让我们动态配置的位置,那么我们先退回来在这个。
04:08
我们的这个系统配置,配置的这个选项里,注意是在这个configure system,这是全局的配置里边,能够找到我们刚刚安装这个插件啊,给它添加一台远程的服务器,我往下拉找一件jacks相关的,这是。啊,Pipeline相关的。嗯,再往下。再往下。再往下再看12相关的,嗯。再往下拉邮件服务器,哎,这就是publish over SSH,我们刚刚装的那个插件,然后在这呢配置一下,现在呢,一台服务器都没有,也就是你想要去发布到目标的这个服务器呢,现在没有,可以在这儿去添加一个新增。在这就可以加了,这是我们的test server。
05:00
加一名字,然后主机名,这就是IP地址啊,IP地址咱那个应该是104吧。是吧,这是104。192.168.44.104,这是IP,然后账号密码,这是最简单的方式啊,当然我们还可以用其他的验证方式,比如说用这个呃,非对称加密这种用这个密钥啊,也可以去登录,在咱们这儿呢,用最简单的账号对吧,Username对吧,Root,然后remote,这是它的目录对吧?啊这可可选啊,这这我们可以不填。然后在这个位置,我们现在由于我没有填密码,只有一个username是吧,在下边呢,点一下高级对吧,Use password or什么这个I didn't find用在这儿呢,增加一层验证,在这我们直接填密码。然后其他呢啊这些呢,都不需要管啊,这端口号,注意SSH的端口号是不是22,如果你改过的话呢,在这改一下。
06:05
如果在这还可以增加一个跳板机,也就是这个代理服务器,如果你现在想连那台服务器呢,需要额外的跳板机才可以连上很多的这个,呃,项目开发的过程当中呢,你想连某台机器就得经过跳板机,这里边可以去配置跳板机,然后在下边呢,Test con试一下我们能不能连上,如果你填错的话呢,这会给你报错对吧?现在success啊,OK,能连上,我们试一下错的密码,我给他写错了来。Test con。Testing你看诶,这里边出问题了对吧,你这个message是啥?呃,Off filed对吧?啊,这个权限认证失败,是我们这个密码填错了。然后呢,我把这个给大家截一个图。记到咱们这个文档里哈。嗯,从。这开始,这publish over SSH。
07:00
这样。上边这些呢,都可以空着。啊,不需要填。然后给它给粘过来。这是。嗯。哎,这么丑怕B类是。理事。SSH配置。然后第一步,然后添,这是添加一台一台不是一条啊目目标。不是目标服务器。在添加的时候呢,就照着我这个格式去添加,添加,嗯,再往下边还有啊,到这个IP地址了,再往下。啊,点这个高级之后啊,才会显示让你填密码是吧,这样。剩下的都可以空着啊,主要就填这这么几个地儿。这个添加这个服务器是在啊,先保存一下咱们。
08:03
是在这个地儿。变大一点,有同学反映之前录视频的时候不看不清吗?这咱们放大一点,在呃,Configure system这个菜单下。然后在。Confi菜单下。里呃,往下拉,当然啊,提前只得安装插件,这第一步是安装插件。然后第二步添加一台机器,然后第三步是修改我们,呃,之前的这个。修改配置。啊,修改一下配置。退回来。Firstly。找到这个配置,然后post在这儿。添加file。这个OSH这地儿,哎,这就能出来,我们这个刚刚添加这个test server了是吧,然后点完之后呢,看这这个位置啊嗯。
09:09
这叫source file,这就是我们想要去给他传过去的具体的文件,这个位置呢,还可以使用通配符,你看星星点这它的这个目录我们看一下。在这儿。CD一下,嗯,CD.s。Workspace。嗯,然后找到这个first。然后这个DEMO。然后target。这才有这个包,那么它有一个默认的根目录,就是我们的项目的,呃,这个work的这个目录,那么我们在这呢,最简单的方式的配置呢,我们可以用也用这个通配符,然后接下来呃,DEMO。
10:05
呃,戴杠一对吧,然后下边啊星点这。在我们当前这个目录下所有的这个jar文件,我让他把它给扔过去,这不是啊,只能够传出一个文件,它可以用通配符的啊,然后下面这两个呢,我们先不管,然后最后这有一个SQ的command,就是在我们传完之后,在目目标服务器上,就是我们那个测试服务器上。想让他执行什么命令,那在这儿我们可以让他执行个Java杠,这。对吧,由于我们现在还不知道他传过去这个目录究竟在哪儿,所以我们在这儿呢,先先简单来一个eo。IQ1是吧,啊,这样简单来一个最简,这个最简单的命令给它写进去,那接下来呢,我们保存一下啊,这爱的爱的川字粉这就不要再点了啊,然后保存一下,保存完成之后呢啊,我们测试一下先。
11:00
登到我们的这个目标的测试服务器上。啊,我们看一下它有没有帮我们去传输过来,来在这儿。呃,执行一下我们这个任务走。这个需要一步一步的,咱们测试着来,对吧,点开看这控制台的输出。啊,现在正在打包编译,然后跑测试。来看测试完之后,然后finish了,然后开始连接了啊看连完之后你看呃,Unstable啊,出了一点小问题,这里边的问题是for confiur test密码对吧,所是之前。忘了改这个密码了。嗯,刚才我们故意把那个密码给配错的是吧。然后给它拖到最下边。
12:03
高级里这个密码我们改一下,123456。然后测一下来没问题,然后再保存。然后呢,呃,我们在。再让他跑一下。在这啊,我们再看一下这个配置啊,好像有一个地儿没改。就是发过去之后给他发到哪这个remote。Directory这个我没给他是吧,我们在这呢,给他一个root我们的这个叉叉oo,你看我们现在呢,应该是没有这个目录的。这是目标的那个服务器是吧,CD到我们的加目录,LS现在是空的,叉叉O这个目录,呃,正常情况他会帮我们去创建这个目录,然后我们再保存一下。然后再让他重新跑一下这个任务来走。这个黄色的unstable就是并不是特别那么极其严重的这种错误啊,相当于警告吧。
13:01
我们看看它的这个执行执行状态。哎,OK finished success了已经,然后呢,我们看看这里边它有没有这个文件。呃,它好像没有是吧,那现在这个没有文件啊,我们也不要慌,咱们再仔细看一下它这个输出的日志,你看连接成功,然后嗯,连接这个配置的服务器成功执行,然后呃,断开连接。然后transfer的零个files啊,这是没有传文件,一个文件都没有传过去,对吧,那是打包呢,已经完成了,OK了,全部都OK了,那么在这块我们能够简单的分析就是,呃,我们想让他传的这个文件啊,他没找着你,我们再看一下jacks workspace first,然后target DEMO,然后一,然后杠0.1,然后snapshot点这这一定是配置上出了问题,我们再开一个新窗口,我们看一下这个配置。
14:08
点开,然后配置。这个遇到这种问题啊,我们要一步一步的来,不要慌,这个最主要可能出的问题在这儿就DEMO杠一,然后再斜杠行点这,我们看它输出的这个DEMO杠一,再斜杠点这。很明显啊,这个斜杠下呢,这个目录下呢,它没有这个炸包是吧,所以我们改一下这个配置。呃,怎么改呢?我想想啊,那前面已经是任意目录了,那么我们。这样就DEMO星点,这让他去匹配前边的所有的目录,然后呢,以DEMO开头的所有的炸包,我们全都给它传过去,就是前面这一切呢,我们不管你有多少,我只匹配到这个DEMO,然后杠1.0这个shop点。是这个意思,因为刚才我们填的这个目录呢,它是没找到这个文件,如果同学也出现这个问题,你先看他没发文件,假如再看一下你所匹配的这个发送文件的这个,呃,这个。
15:13
这个文件名啊,在这儿去找这个问题,然后我们再保存一下,然后再让它跑一下。来,走。这些呃问题出现啊,其实都是为了一些节目效果,我如果要是在这儿一下就成功了的话,很可能你自己在跑的时候,呃搞半宿可能也找不着问题究竟在哪啊,带着大家来演示一下这个问题究竟呃怎么出的,还有怎么解决。来再看这个执行过程。SSH这一个经过一个文了,这个这道就应该有这个文了,我们再检查一下。哎,LS这root。嗯,LS,然后叉叉OO是吧。
16:02
然后DEMO1。然后target。然后我们的这个炸包已经有了是吧,那我们运行一下,你看它有没有问题,Java杠这。DEMO。这是呃,104。我们访问一下这个104。的8080端口走诶,Hello word OK,没问题,屌不屌,现在已经把这个包给我们自动的传过来了,那我们再看一下啊,现在有一个问题就是这个目录。你看它是不是有点长,而且这怎么还多了一个root。那么这也是在存在这个配置文件里,我们去改来,咱们再点回到这个配置文件。
17:01
点开项目,然后配置。呃,Post step我们往下看。啊,在这呢。Directory它是默认给我们传到这个加目里加目录里了,对吧,然后又加了一个root是吧。呃,那么我们在这看啊,我们可以把这层root呢给它给呃删掉,然后另外就是它现在这个目录呢,嗯,后边这呢也有点长对吧,插头O,这本来就是我放这个炸包的地,它有一个DEMO杠一,还有一个target,我想把这两个给给去掉。怎么去把它复制过来,然后在这给它粘上叫remove perfect,把它的前缀给它给清除掉,这样然后呢,我们保存一下,接下来我们测试一下哈,来保存,然后把。刚刚这些呢,给它给删掉。RM杠、rf root。
18:01
现在啥都没有了。然后我们再重新跑一下这个任务走。在这儿。然后在这儿。然后看他输出的信息会不出什么问题。诶,传过去一个文件,然后我们找一下这个文件,还有这个地址RS,看他直接在我们的这个root目录下。呃,就是我们的加目录下创建了一个叉叉O文件夹,比刚才呢少了一个root对吧,这是多余需要填的,然后在叉叉O下边我们再看。把前面的这个呃,DEMO杠一杠target呢,也给它给过滤掉了是吧,直接到这个DEMO的这个这个这个呃,这这直接到这个叉叉oo这个目录下了,这前面这是过滤前缀的功能。
19:02
那么现在把这个包已经给完整的发送过去了,那么我们在想得寸进尺一下的话呢,就是呃,你看啊。那我们之前呢,把呃包打包完了,然后传到,哎,怎么打不开这么慢。已经传到这个测试服务器上了,那最好再帮我启动一下行不行。那细心的小伙伴其实刚才已经看到了啊,在这个后边这个cut,最后执行命令的这个位置,其实我们是可以跟一些基本的这个SSH的命令呢,在这儿你看。SQ的command,我们现在只是让他执行了一个I1,我是不是可以在这让他顺便把我这个炸包给它给启动起来啊。是吧,那么我们启动的话怎么启动Java杠炸嘛,对吧?啊,尽可能不要这么干啊,加一个这个no。Ho,这样可以在呃,这个系统后台进程运行的时候呢,同时不绑定在我们当前的这个活动进程里边,而直接让它启动,然后Java杠炸,然后后边跟这个炸包地址,这个这个这个炸包名称是吧,然后再最后呢,给它加一个and符,这是后台运行的意思。
20:12
然后在这就需要找我们这个炸包了,这炸包在哪。嗯,在。看PWD在root叉叉oo这个目录下,然后DEMO什么什么点这这个版本号是不是有可能会变,所以我们在找这个炸包的时候,是不是也可以用一下这个通配符啊是吧。来,我们复制过来。运行Java杠这root,写这个下边的叉,然后在下边DEMO。星点这。啊,这样呢,我们把这个呃命令给它给写好之后呢,再保存一下。这是一步一步来的啊,然后接下来我们把前面的这些啊,给它给还是给它清掉。
21:06
RM-RF,然后叉叉oo。现在啥都没有了是吧,然后接下来我们在这儿。去重新运行一下。看这控制台。那由于它是在我们的另外一个绘画里启动的那个炸包,我们想要看这炸包有没有启用这勾这个命令就可以了,诶OK,现在炸包已经起来了,大家看。GPS是监视我们这个Java进程的啊,然后在这呢,我们直接去访问幺九二点幺六八点四四点。104,然后8080端口走,看hello word直接把我们起来了,这是最基础的,呃,这么一个配置啊,然后当然呢,现在这个配置还有一些问题,比如说我们现在的这个呃,系统我们让它运行完之后呢。
22:17
每次运行呢,每次都去把这个文件给它覆盖掉了,然后每次再去重启,再去启动的时候呢,端口号肯定会被占用掉,那么我后边的一点一点的给大家讲解如何去解决这些问题,那么学到这儿的话,同学们是不是已经把呃,我们前面用到的啊这些啊,我们已经安装好的这些工具全部都给用上了,对于这个自动化的部署运维是不是已已经有了一点。基本的概念了,对吧,那么后边呢,会一点一点的再去深入的去学习。
我来说两句