<small id='IrYAdD7a'></small> <noframes id='YiZ6p'>

  • <tfoot id='guarU8'></tfoot>

      <legend id='uyNpv'><style id='keOAG'><dir id='6CA0EBr2od'><q id='WrBoHDbE'></q></dir></style></legend>
      <i id='Lvj87BIx'><tr id='3bF5'><dt id='gWHUERQJ'><q id='3JBt'><span id='3EnJSGvqRP'><b id='1qKtW30Mwd'><form id='5GSAUX'><ins id='yIoOU'></ins><ul id='62M5X'></ul><sub id='62c9'></sub></form><legend id='pt07doeLE'></legend><bdo id='xH2fyhNW'><pre id='AwoZDzS'><center id='rPKMnTcHO'></center></pre></bdo></b><th id='HGWoJ3MR'></th></span></q></dt></tr></i><div id='u5neUQ1S'><tfoot id='BmnPr46bW'></tfoot><dl id='AKkEh7l'><fieldset id='NmA2y'></fieldset></dl></div>

          <bdo id='UfxC'></bdo><ul id='eDK8slOV6'></ul>

          1. <li id='MtVnrSf'></li>
            登陆

            根据jenkins的弹性继续集成

            admin 2019-11-22 222人围观 ,发现0个评论

            jenkins作为当时市面上运用率最广泛的继续集成东西,功用强大、操作简略,咱根据jenkins的弹性继续集成们都比较了解了。在运用jenkins的过程中,很少的情况下装置单机jenkins作为slave直接进行构建;比较常见的景象,是装置一台jenkins作为master,其他windows或许linux的机子作为slave连接到该master上,由master下发使命构建到不同的slave节点上,如此既能够下降master节点的负载,又似的slave的无限扩展成为或许,然后增强jenkins的履行才能。可是这个办法有个不足之处,便是当构建的使命许多的时分,现有的slave节点或许无法满意构建需求;而当构建使命不多的时分,slave节点的资源又存在糟蹋。并且,节点的办理都需求在master节点进行注册,也是一项不小的作业。那么,有没有办法既能削减slave节点的保护又能进步jenkins的弹性继续集成才能呢?答案是docker。此处,咱们介绍一下单机docker的设置办法,其他根据k8s或许swarm的原理,迥然不同。

            装备docker服务敞开长途拜访

            • 首要咱们在现已装置好docker的服务器上敞开长途办理docker的功用:
            vim /etc/docker/daemon.json

            然后修正文件内容,增加:

             "hosts": ["tcp://192.168.10.34:2375","unix:///var/run/docker.sock"]

            留意把ip换成本机ip。然后重启docker服务

            service docker restart

            假如上述办法无效,咱们换用修正systemd办法:

            vim /lib/systemd/system/docker.service

            然后修正

            把这一行改为:

            ExecStart=/usr/bin/dockerd -H fd:// -H unix://var/run/docker.sock -H tcp://0.0.0.0:2375 --containerd=/run/containerd/containerd.sock

            然后保存修正:

            systemctl daemon-reload

            重启服务:

            service docker restart
            • 然后咱们拉取ssh-slave这个jenkins的slave镜像:https://hub.docker.com/r/jenkinsci/ssh-slave
            docker pull jenkinsci/ssh-slave

            装备jenkins

            • 首要在jenkins上装置插件docker:

            • 然后在 体系办理 - 体系设置 根据jenkins的弹性继续集成- 云 - 新增一个云 - docker, 设置docker相关信息:
            • 点击Docker cloud details:

            首要填入dockerhost的地址和enable这个docker host。假如咱们在敞开docker http长途拜访的时分启用身份验证的话,就用Server credentials那个地方办理链接的用户名和暗码。container cap那个地方,设置jenkins能够一起最大创立的容器个数。

            • 接着咱们增加agent template:

            要点阐明几个装备:

            labels这个字段:用于咱们在装备构建使命时挑选运转节点时运用

            enabled:启用本agent template

            name: jenkins创立container的时分其的姓名的前缀,后面会跟一个创立时结构的仅有标识

            docker image:便是咱们上面pull的默许的jenkinsci/ssh-slave,假如咱们自己封装了image,写上自己的即可

            credentials:拜访docker镜像库房的用户名和暗码

            instance capacity和remote file system root,一般用不上

            用法: 咱们挑选 只允许运转绑定到这台机器的job,这个装备便是和一般的slav根据jenkins的弹性继续集成e装备相同了

            connect method: 咱们挑选 attach docker container

            remove volumes: 咱们勾选上,否则删去container后仍旧或许占用硬盘空间

            pull strategy: 拉取镜像的战略,咱们这儿选never pull

            别的一些构建时用的东西方位、环境变量等,咱们在node properties里边装备。有一种办法,便是咱们在宿主机上装置共用的东西,比方ant、maven这些,然后经过volume的方法挂载到container里边,这样咱们的镜像就不需求装置这些东西了,如此,咱们点击CONTAINER SETTINGS打开容器的装备信息,包含CPU、内存、vo华润万家邮件系统登录lume等装备,咱们根据需求自行设置。

            验证

            • 咱们创立一个自在风格的job
            • 约束项目的运转节点,填入内容与上文的labels相同:

            • 构建,咱们这儿做一个演示,简略点好了:

            • 然后保存,当即构建
            • 稍等会,咱们就看到有container创立并履行成功:

            控制台输出里边也能看到相应的履行成果:

            而在使命履行完结之后,该container也被jenkins删去,节点傍边也看不到该容器。然后完结了有使命时创立容器并履行,使命完结之后删去容器的jenkins弹性继续集成。

            请关注微信公众号
            微信二维码
            不容错过
            Powered By Z-BlogPHP