云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

虚拟主机_服务器是什么意思_哪个好

小七 141 0

用Docker容器模板化Jenkins构建环境

构建通常要求运行它的从节点可以使用凭据或工具。对于很少有专门作业的小型安装,使用通用从属设备可能是可以管理的,但是当这些需求乘以许多组织每天运行的数千个作业时,管理和标准化这些从属环境就变得更具挑战性。Docker是什么?Docker是一个开源项目,它为使用容器构建和传送应用程序提供了一个平台。此平台使开发人员能够轻松创建标准化环境,以确保测试环境与生产环境相同,并为虚拟化应用程序提供轻量级解决方案。Docker容器是由应用程序及其依赖项组成的轻量级运行时环境。这些容器在机器上运行,从而避免了传统虚拟化技术所带来的1-5%的CPU开销和5-10%的内存开销。它们也可以从一个名为Docker image的只读模板创建。Docker映像可以从称为Dockerfile的环境定义创建,也可以从作为映像提交的正在运行的Docker容器中创建。一旦Docker映像存在,就可以将其推送到Docker Hub这样的注册表中,然后根据该映像创建一个容器,从而创建一个运行时环境,其中安装了一组有保证的工具和应用程序。类似地,容器可以提交到映像,然后提交到Docker Hub。用于引导和模板化从设备的DockerDocker已经成为引导隔离和可复制环境的流行且方便的方法,这使得Docker容器成为最易于维护的从属环境。Docker容器的工具和其他配置可以在一个称为Dockerfile的环境定义中进行版本控制,Dockerfiles允许使用此定义快速创建多个相同的容器,或者使用Dockerfile的图像作为基础来创建更自定义的外景拍摄。CloudBees自定义构建环境插件允许Docker图像和文件作为Jenkins slaves的模板,从而减少了从设备安装的管理开销,只更新了几个环境定义中的几行,从而可能会有数千个从设备。使用Docker容器构建此插件在作业的构建环境配置中添加了"在Docker容器中构建"选项。要启用它,只需滚动到任何Jenkins作业的"Build Environment"部分,然后选择"Build inside a Docker container"选项。然后,您将能够指定是否应该从签入工作区的Dockerfile创建从属容器(例如,该文件位于项目的根目录中),还是从Docker注册表中提取显式图像用作从属容器。 定制的从属环境对于一般的构建,您可以利用Docker Hub中名为evarga/Jenkins slave的最流行的Jenkins slave映像,或者为任何需要一些构建依赖项的特定构建创建一个新映像,这些构建依赖项应该在工作区中可用,例如凭据。要创建自定义环境,您需要创建自己的Docker slave映像。这可以通过创建一个新的Dockerfile或运行一个现有的从映像(例如"evarga/jenkins slave"),然后安装必要的自定义工具或凭据,并将更改提交到新映像中。要从Dockerfile创建一个新图像,您只需使用Dockerfile指南和引用编辑"evarga/Jenkins slave"文件的下面副本从ubuntu:信任维修工埃尔文·瓦尔加apt运行更新运行apt get-y upgrade运行apt get install-y openssh server运行sed-i的session required pam_loginuid.so|会话可选pam_loginuid.so|g'/etc/pam.d/sshd公司运行mkdir-p/var/RUN/sshd运行apt get install-y openjdk--jdk运行adduser--quiet jenkins运行回显"詹金斯:詹金斯"|密码曝光22命令/usr/sbin/sshd","-D"] 在Docker容器中构建的构建将通过作业的构建历史中内联显示的Docker图标进行标识。我从哪里开始?CloudBees Docker定制构建环境插件是一个开源插件,因此可以从开源更新中心下载或打包为CloudBees-Jenkins平台的一部分。其他插件补充和增强了这个插件可能的管道。在这些博客中阅读更多关于它们的使用案例:Docker构建和发布插件云蜂詹金斯平台的码头奴隶Jenkins Docker工作流DSLDocker可追溯性Docker Hub触发器插件更多信息可以在詹金斯食谱中找到。特蕾西·肯尼迪副产品经理云蜂特蕾西·肯尼迪是位于弗吉尼亚州里士满的CloudBees的副产品经理。在Meet the Bees博客中阅读更多关于Tracy的文章,并在Twitter上关注她。   了解更多IT内部正在发生一种变革,它使IT部门能够更快地为企业、最终消费者和最终用户提供更多价值。在这篇文章中,我们将着眼于容器技术的快速发展,并将讨论Docker、Jenkins和DevOps如何联合起来加速创新。下载您的副本以了解:我们今天看到的创新催化剂下一代持续集成和持续交付詹金斯和多克一起工作