Docker安装Jenkins系统常用插件用途解析
系统平台
安装准备
通过 docker-compose.yml 方式安装部署,文件内容如下:
有些目录需要提前先创建好,同时授予相关访问权限。
然后执行 docker-compose ,这是一个Docker Compose命令,用于在后台启动和运行基于Compose文件定义的容器。
可以看到上面的指令执行后,有提示 Container jenkins Started ,
docker-compose: 是用于管理多个Docker容器的工具,通过Compose文件定义了容器之间的关系和配置。
up: 是docker-compose命令的子命令,用于启动指定Compose文件中定义的服务。
-d: 是一个选项,表示以后台(守护进程)模式运行容器。这样可以使容器在后台持续运行,而不会阻塞命令行窗口。
使用docker-compose up -d命令时,Docker Compose将读取当前目录中名为docker-compose.yml 的Compose文件,并根据其中的定义启动相应的服务。Compose文件描述了要创建的服务、镜像、端口映射、环境变量、卷挂载等信息。
在运行docker-compose up -d命令后,Docker Compose将根据Compose文件中的定义,自动下载所需的镜像并启动对应的容器,我之前已经执行过了,定义的镜像也都下载好了,这时候再次执行,就直接启动容器了。
访问系统
http://ip:port 就可以访问系统页面了
按系统提示查看这个密钥,然后输入点击继续,在配置几步就可以登录系统了,如下的重新登录系统首页。
如下是创建了不同风格的Job展示
如想让 Jenkins 完成很多高级的功能任务,那就要预先善其事,必先利其器,安装必须的插件,才能实现高级功能。
我大概安装了 190 多个插件,下面分享一下 Jenkins 系统常用插件的用途解析。
名 称 | 用 途 |
Analysis Model API Plugin | 分析模型API,用于读取、聚合、筛选和查询静态分析报告。 |
AnsiColor | ANSI此插件为控制台输出颜色 |
Ant Plugin | 添加了Apache Ant支持 |
Apache HttpComponents Client 4.x API Plugin | 这个插件捆绑了Apache HttpComponents Client 4.5.x的所有组件 |
Authentication Tokens API Plugin | Jenkins身份验证令牌API插件 |
Badge | 用于添加徽章并从管道中构建摘要条目。 |
Bitbucket Branch Source Plugin | Bitbucket版本管理组件 |
Blue Ocean | Blue Ocean是为Pipeline设计的,提高团队每个成员的清晰度。 |
Bootstrap 5 API Plugin | Bootstrap 世界上最流行的前端组件库,用于在web上构建响应迅速。 |
bouncycastle API Plugin | 这个插件为Bouncy Castle相关任务提供了一个稳定的API |
Branch API Plugin | 多个基于分支的项目提供了一个API |
Build History Manager | 构建历史管理器插件 |
Build History Metrics plugin | 计算出的指标显示在每个作业页面的表格中 |
Build Pipeline Plugin | 此插件提供了通常形成构建管道的上游和下游连接作业的构建管道视图 |
Build Timeout | 此插件允许您在构建耗时过长时自动终止构建。 |
build user vars plugin | 一组环境变量,用于描述启动生成的用户。 |
built-on-column | 在jenkins面板上添加一列,显示上一次构建运行的实际节点。 |
Caffeine API Plugin | 开发人员的重要信息 |
Checks API plugin | 插件可以发布带有Jenkins构建自定义参数的检查 |
Clang Scan-Build Plugin | 针对Mac或iPhone XCode项目执行Clang扫描构建。 |
Cloud Statistics Plugin | 收集其他插件的活动并将其可视化,并以API的形式将其提供给其他插件。 |
Cobertura Plugin | 此插件允许您从Cobertura捕获代码覆盖率报告。 |
Code Coverage API Plugin | 收集代码覆盖或突变覆盖工具的报告 |
Command Agent Launcher Plugin | 让Jenkins从控制器执行命令来启动代理,远程执行进程时通过SSH或RSH。 |
commons-lang3 v3.x Jenkins API Plugin | 为Jenkins插件提供了Commons Lang v3.x。 |
commons-text API Plugin | 这个插件为Jenkins插件提供了Commons Text v1.x。 |
Conditional BuildStep | 添加一个充当容器的条件构建步骤,允许您定义一个控制步骤执行的条件。 |
Config API for Blue Ocean | CD管道的复杂可视化,可快速直观地理解软件管道状态。 |
Config File Provider Plugin | 提供UI加载的配置文件(即,maven的settings.xml、xml、groovy、自定义文件等)的功能,这些文件将被复制到作业的工作空间。 |
Credentials Binding Plugin | 允许将凭据绑定到环境变量,以便在其他生成步骤中使用。 |
Credentials Plugin | 使用credentials API检索凭据 |
Dashboard for Blue Ocean | CD管道的复杂可视化,可快速直观地理解软件管道状态。 |
DataTables.net API Plugin | 提供jQuery数据表,DataTables是jQueryJavascript库的一个插件。 |
Design Language | 可重复使用[Rreact]组件和设计元素。 |
DevOps Portal | 将有关应用程序构建的所有信息集中在一个面板上 |
DingTalk | DingTalk 机器人通知 |
disk-usage plugin | 此插件记录磁盘使用情况。 |
Display URL API | 提供一个扩展点,用于定义在通知中使用的备用URL。 |
Display URL for Blue Ocean | 该插件提供了显示url插件的实现 |
Docker API Plugin | 向Jenkins插件公开docker-java API |
Docker Commons Plugin | API插件,为各种Docker相关插件提供通用共享功能。 |
Docker Pipeline | 允许构建、测试和使用Jenkins Pipeline项目中的Docker图像。 |
Docker plugin | 该插件允许使用Docker将容器动态配置为Jenkins节点 |
Docker Slaves Plugin | 使用Containers设置生成代理,对可以使用的图像没有任何限制。 |
docker-build-step | 允许将各种Docker命令作为构建步骤添加到Jenkins Freestyle作业中。 |
Durable Task Plugin | 库为可以在Jenkins之外运行但仍受监控的进程提供了一个扩展点。 |
ECharts API Plugin | 一个开源的JavaScript可视化工具,用于创建直观、交互式和高度可定制的图表。 |
Email Extension Plugin | 插件允许您配置电子邮件通知的各个方面。 |
EnvInject API Plugin | 为Jenkins插件中的环境变量管理提供了额外的API。 |
Environment Injector Plugin | 这个插件可以为您的工作设置一个自定义环境。 |
Events API for Blue Ocean | Blue Ocean是为Pipeline设计的,提高团队每个成员的清晰度。 |
External Monitor Job Type Plugin | 添加了监视外部执行作业的结果的功能。 |
Favorite | 这个插件允许用户创建“文件夹”来组织作业,可以在文件夹中定义视图。 |
Folders Plugin | 网络上最受欢迎的图标集和工具包。 |
Font Awesome API Plugin | 有矢量图标和社交标志,网络上最受欢迎的图标集和工具包。 |
Forensics API Plugin | 定义了一个API来挖掘和分析源代码管理存储库中的数据。 |
Generic Webhook Trigger Plugin | 接收任何HTTP请求,JENKINS_URL/通用webhook触发器/调用 |
Gerrit Code Review plugin | 多分支管道与Gerrit Code Review无缝集成,用于分支和更改验证。 |
Gerrit Trigger | 该插件将Jenkins集成到Gerrit代码审查中,以便在创建“补丁集”时触发构建。 |
Git client plugin | git客户端插件为Jenkins插件提供git应用程序编程接口(API)。 |
Git Parameter Plug-In | 在构建中指定git分支、标记、pull-request或修订号作为参数。 |
Git plugin | git插件为Jenkins项目提供了基本的git操作 |
GitHub API Plugin | 此插件是其他GitHub相关插件用来共享相同库的库插件。 |
GitHub Branch Source Plugin | 允许您根据一个或多个GitHub用户或组织的存储库结构创建新项目 |
GitHub plugin | 当您从post-rereceive钩子中查找HTTP post并可选地自动管理钩子设置,从而将作业推送到存储库时触发作业。 |
GitLab Authentication plugin | 该插件通过使用GitLab OAuth应用程序进行身份验证。 |
GitLab Branch Source Plugin | GitLab API插件-包装GitLab Java API。 |
GitLab Logo Plugin | 在仪表板上显示GitLab存储库图标 |
Gitlab Merge Request Builder | 在Gitlab中创建的用于构建合并请求的插件。 |
GitLab Plugin | 该插件允许GitLab在提交代码或打开/更新合并请求时触发Jenkins中的构建 |
Gradle Plugin | Gradle(与Ant或Maven相同),提供了一个新的构建步骤来执行Gradle任务。 |
Groovy | 这个插件增加了直接执行Groovy代码的能力。 |
Groovy Postbuild | 这个插件在Jenkins JVM中执行一个groovy脚本。 |
H2 API Plugin | 此插件是一个共享库。它提供了H2 jar。 |
Handy Uri Templates 2.x API Plugin | 这些组件可以作为依赖项被其他插件使用。它允许独立于插件管理库更新。 |
HTML Publisher plugin | HTML Publisher插件可用于将构建生成的HTML报告发布到作业和构建页面。 |
HTTP Request Plugin | 此插件向用户指定的URL发送HTTP/HTTPS请求。 |
i18n for Blue Ocean | |
Infrastructure plugin for Publish Over X | Publish-Over插件的目标是在发送构建工件时提供一组一致的特性和行为 |
Instance Identity | 这个插件维护了一个RSA密钥对,可以作为与Jenkins通信时身份验证的基础。 |
Ionicons API | 这个插件为您的Jenkins插件提供了ionicon,也称为“符号”。 |
Jackson 2 API Plugin | 此插件将FasterXMLJackson2 API公开给Jenkins插件。 |
JaCoCo plugin | 用于捕获和可视化使用JaCoCo进行代码覆盖率分析与代码覆盖率测试结果。 |
Jakarta Activation API | 此插件为其他插件提供Jakarta Activation API。 |
Jakarta Mail API | 此插件为其他插件提供Jakarta Mail API。 |
Java JSON Web Token (JJWT) Plugin | 从Jenkins插件中使用的JJWT捆绑包。这提供了JSON Web令牌功能。 |
JavaBeans Activation Framework (JAF) API | 此插件为其他插件提供JavaBeans激活框架(JAF)API。 |
Javadoc Plugin | 这个插件为Jenkins添加了Javadoc支持。 |
JavaMail API | 此插件为其他插件提供JavaMail API |
JavaScript GUI Lib: ACE Editor bundle plugin | HPI相关性插件 |
JAXB plugin | 这个插件捆绑了JAXB库,是一个所谓的库插件。 |
Jersey 2 API | 这个插件为其他插件提供了JAX-RS2.1和Jersey 2 API。 |
JFrog Plugin | Jenkins JFrog插件允许Jenkins和JFrog平台之间轻松集成。 |
Job and Stage monitoring Plugin | 在Jenkins插件更新中心,3.0版本被列为一个突破性的变化。 |
Job Configuration History Plugin | 保存所有作业和系统配置的副本,可以查看哪个用户进行了哪些更改。 |
Job DSL | Job DSL插件允许在人类可读文件中以编程形式定义作业来解决这个问题。 |
Job Import Plugin | 从另一个Jenkins实例导入作业。 |
jQuery plugin | 这个插件是一个库插件,用于其他插件共享公共jQuery。 |
JQuery3 API Plugin | 提供jQuery 3 |
JSch dependency plugin | 这个插件提供了对com.jcraft:jschJAR的共享依赖 |
JUnit Plugin | JUnit插件提供了一个使用构建过程中生成的XML测试报告图形可视化 |
JWT for Blue Ocean | CD管道的复杂可视化,可快速直观地理解软件管道状态。 |
Kubernetes Client API Plugin | 此插件将Kubernetes客户端API公开给Jenkins插件。 |
Kubernetes Credentials Plugin | 包含Kubernetes插件和Kubernete CLI插件之间共享的类: |
Kubernetes plugin | Jenkins插件,用于在Kubernetes集群中运行动态代理。 |
LDAP Plugin | LDAP插件 |
Localization Support Plugin | 支持独立本地化插件的基础设施。 |
Localization: Chinese (Simplified) | Jenkins核心和插件的简体中文本地化。 |
Mailer Plugin | 此插件允许您为生成结果配置电子邮件通知。 |
MapDB API Plugin | 提供了对MapDB库的共享依赖,以便其他插件在使用该库时可以进行协作。 |
Matrix Authorization Strategy Plugin | 使用此插件在Jenkins中实现细粒度访问控制。 |
Matrix Project Plugin | 配置矩阵允许您指定要复制的步骤,并创建要创建的构建类型的多轴图。 |
Maven Integration plugin | 启动Maven的JVM优于或等于Jenkins Controller所针对的Java版本。 |
Metrics Plugin | Metrics API包含一个健康检查合同。健康检查返回一个简单的PASS/FAIL状态 |
Mina SSHD API :: Common | 这个插件将Apache Mina SSHD模块封装为Jenkins插件。每个模块都有自己的插件。 |
Mina SSHD API :: Core | 这个插件将Apache Mina SSHD模块封装为Jenkins插件 |
Monitoring | 使用JavaMelody监控Jenkins本身的性能。 |
Multijob plugin | 该类可以在管道中完成插件所做的工作。 |
Nested Data Reporting | 该插件从各种文件格式(如json、yaml、xml或csv)可视化用户特定的内容 |
OkHttp Plugin | 这个插件管理Jenkins插件的okhttp库版本。 |
Oracle Java SE Development Kit Installer Plugin | 该插件提供了一个工具安装程序,用于在Jenkins中安装Oracle Java SE开发工具包。 |
OWASP Markup Formatter Plugin | 该插件允许使用HTML的安全子集格式化Jenkins中的作业、构建、视图等的描述。 |
PAM Authentication plugin | 为Jenkins添加了Unix可插拔身份验证模块(PAM)支持。 |
Parameterized Remote Trigger Plugin | CI的插件,使您能够在远程Jenkins服务器上触发参数化构建,作为构建的一部分。 |
Parameterized Scheduler | 支持在构建计划中设置参数 |
Parameterized Trigger plugin | 该插件允许您在构建完成时触发新的构建,并通过各种方式为新的构建指定参数。 |
Performance Plugin | 性能趋势报告 |
Permissive Script Security Plugin | 打开脚本安全插件的许可模式 |
Pipeline | 以前称为工作流插件。 |
Pipeline Configuration History Plugin | 在生成的基础上跟踪管道配置的更改 |
Pipeline Graph Analysis Plugin | 用于分析管道工作流的插件通过检查包含它们的FlowNodes的有向无环图来运行。 |
Pipeline implementation for Blue Ocean | CD管道的复杂可视化,可快速直观地理解软件管道状态。 |
Pipeline Maven Integration Plugin | 使用Apache Maven提供了一组高级功能。 |
Pipeline SCM API for Blue Ocean | |
Pipeline timeline | |
Pipeline: API | 定义管道API的插件。 |
Pipeline: Basic Steps | “管道步骤”参考描述了此插件提供的管道步骤。 |
Pipeline: Build Step | 添加管道生成步骤,该步骤将触发其他作业的生成。 |
Pipeline: Declarative | 管道模型定义插件提供了一种类似配置的语法来定义管道,因此是声明性管道。 |
Pipeline: Declarative Extension Points API | |
Pipeline: GitHub Groovy Libraries | 允许从GitHub上的公共存储库动态加载Pipeline Groovy库。 |
Pipeline: Groovy | |
Pipeline: Groovy Libraries | 该插件通过允许您创建“库脚本”SCM存储库来添加该功能。您可以在自己选择的位置定义任何SCM托管的库。 |
Pipeline: Input Step | 添加管道输入步骤以等待人工输入或批准。 |
Pipeline: Job | 该插件为Pipeline提供了Jenkins作业和构建类型以及通用用户界面。 |
Pipeline: Milestone Step | 默认情况下,管道生成可以并发运行。里程碑步骤确保旧版本不会覆盖新版本 |
Pipeline: Model API | 管道模型定义插件提供了一种类似配置的语法来定义管道,因此是声明性管道。 |
Pipeline: Multibranch | 通过自动对来自不同分支的构建进行分组,增强了Pipeline插件以更好地处理分支。 |
Pipeline: Nodes and Processes | 管道步骤锁定代理和工作区,并运行可能在Jenkins重新启动或代理重新连接后幸存的外部进程。 |
Pipeline: REST API Plugin | 它定义了用于安全访问管道数据的REST端点 |
Pipeline: SCM Step | 这个插件允许管道使用标准的Jenkins SCM插件来检查源代码。 |
Pipeline: Stage Step | 添加“管道”阶段步骤,该步骤可用于描绘构建的各个部分。 |
Pipeline: Stage Tags Metadata | 管道模型定义插件提供了一种类似配置的语法来定义管道,因此是声明性管道。 |
Pipeline: Stage View Plugin | 管道阶段视图插件 |
Pipeline: Step API | 插件可以通过添加对工作流步骤api的依赖来实现具有特定行为的自定义管道步骤。 |
Pipeline: Supporting APIs | 该插件提供核心管道插件用于持久性和步骤可视化等功能的API。 |
Plain Credentials Plugin | 允许使用纯字符串和文件作为传递给其他生成步骤的凭据。 |
Plugin Utilities API Plugin | 这个Jenkins插件提供了可用于加速插件开发的实用程序类。 |
Popper.js 2 API Plugin | Popper只需一行代码就可以轻松地定位工具提示、弹出窗口或其他任何东西。 |
Prism API Plugin | Prism是一款轻量级、可扩展的语法高亮器,它是根据现代网络标准构建的。 |
Pub-Sub "light" Bus | Jenkins的轻量级发布-订阅(async)事件通知模块。 |
Publish Over SSH | 通过SSH发布的选项 |
Report Info Plugin | 此插件允许您在视图中查看Surefire、PMD、Findbugs和Checkstyle报告中的一些信息。 |
Resource Disposer Plugin | Resource Disposer是其他插件所依赖的实用程序插件。 |
REST API for Blue Ocean | 管道编辑器,通过引导用户通过直观和可视化的流程创建管道,使自动化CD管道变得触手可及。 |
REST Implementation for Blue Ocean | Jenkins UI的个性化,以满足DevOps团队每个成员基于角色的需求。 |
Role-based Authorization Strategy | 创建全局角色,如管理员、作业创建者、匿名者等,允许在全局范围内设置“总体”、“代理”、“作业”、“运行”、“查看”和“SCM”权限。 |
Run Condition Plugin | 这个插件定义了一个ExtensionPoint,插件可以使用它来定义新的运行条件,并使用运行条件来决定是否运行构建步骤。 |
SCM API Plugin | 提供了使用SCM API的指南。 |
SCM Sync Configuration Plugin | 鼓励此插件的用户将他们的作业迁移到管道插件 |
Script Security Plugin | |
Sectioned View Plugin | 这个插件提供了一个新的视图实现,可以分为几个部分。每个部分可以显示有关所选作业的不同信息。 |
Server Sent Events (SSE) Gateway Plugin | Jenkins的网关插件。使用pubsub-light插件jenkins模块接收轻量级事件,并通过SSE将其转发到浏览器平台。 |
Simple Theme Plugin | 该插件允许使用自定义CSS和JavaScript自定义Jenkin的外观。它还允许替换Favicon。 |
SnakeYAML API Plugin | 这个插件打包了Snakeyaml库。该组件可以作为依赖项被其他插件使用。它允许独立于插件管理库更新。 |
Sonar Gerrit Plugin | 该插件通过Gerrit Code Review与开发人员共享SonarQube反馈。 |
SonarQube Scanner for Jenkins | 此插件允许轻松集成SonarQubeTM, 用于持续检查代码质量的开源平台。 |
SSH Build Agents plugin | 提供了一种通过SSH启动代理的方法。 |
SSH Credentials Plugin | SSH凭据插件 |
SSH server | 提供了一个内置的SSH服务器 |
Status Monitor Plugin | 此插件在单个屏幕上直观地显示所选作业的状态。 |
Structs Plugin | DSL插件的库插件,需要Jenkins扩展的简洁名称 |
Subversion Plug-in | Subversion插件 |
ThinBackup | 这个插件只是备份全局和特定于作业的配置 |
Timestamper | Timestamp插件将时间戳添加到Jenkins作业的控制台输出中 |
Token Macro Plugin | |
Trilead API Plugin | |
Variant Plugin | |
Web for Blue Ocean | Jenkins UI的个性化,以满足DevOps团队每个成员基于角色的需求。 |
Webhook Step Plugin | 这个管道插件提供了一种简单的方法来阻止构建管道,直到外部系统发布到webhook |
Workspace Cleanup Plugin | 内置的代码片段生成器可以帮助您了解可用的配置选项。 |
XML Job to Job DSL Plugin | Jenkins插件,用于转换Job DSL插件脚本中的XML作业 |
下面是一些插件在 Job 上的展示
到此,整个 Docker 安装 Jenkins 系统常用插件用途解析就分享完成了,希望对各位有帮助。
写在最后
在不断的项目实施过程中,也不断的在经验总结,个人能力的提升还需要不断的学习,和大家共勉,文章中的分享有不恰当甚至错误的理解,也希望能够得到大家的指正,留言多交流。如对各位有帮助的,也请动动发财的手,点赞点个关注,也是对我的一种鼓励,谢谢各位。