当前位置: 首页 > article >正文

Jenkins安装配置遇到问题及解决方案(Windows版本)

一、Jenkins功能介绍

Jenkins 是一个广泛使用的开源自动化服务器,主要用于持续集成 (CI) 和持续交付 (CD) 的工作流管理。它有许多功能,使得开发团队能够自动化构建、测试、部署和发布软件。

1. 持续集成 (Continuous Integration)
Jenkins 最主要的功能是实现 持续集成。它允许开发人员频繁地将代码合并到主分支中,并自动运行构建和测试,从而及时发现和修复集成问题。(1)自动触发构建:每当代码提交到版本控制系统(如 Git、SVN)时,Jenkins 会自动拉取代码并触发构建。(2)构建验证:Jenkins 会执行构建任务,确保代码正确编译、打包,并通过所有自动化测试。
2. 持续交付和部署 (Continuous Delivery/Deployment)
Jenkins 支持 持续交付 和 持续部署,通过自动化流程管理软件发布到不同环境(开发、测试、生产等)。(1)自动化部署:可以配置 Jenkins 在成功构建后,将应用程序自动部署到开发环境、测试环境或生产环境。(2)多阶段部署:Jenkins 可以实现多阶段的部署流程,如在不同的环境中进行集成测试、性能测试等。
3. 插件支持
Jenkins 是一个高度可扩展的工具,拥有丰富的插件生态系统,支持各种工具和技术栈的集成。支持各种构建工具,如 Maven、Gradle、Ant 等。集成版本控制工具,如 Git、SVN、Mercurial 等。
提供通知功能,可以将构建结果通过邮件、Slack、JIRA 等进行通知。与 Docker、Kubernetes 等容器化平台的集成支持。

4. 构建自动化
Jenkins 提供 流水线 (Pipeline) 功能,通过脚本化的方式定义和自动化整个构建、测试、部署的流程。Scripted Pipeline:使用更灵活的脚本语法,适合复杂的工作流。通过 Pipeline DSL,可以编排从代码拉取、编译、测试、部署等一系列步骤,支持高级自动化。

5. 分布式构建
Jenkins 支持通过 分布式构建 来扩展构建能力,可以将构建任务分配到多台机器上(Jenkins 节点)。Master-Slave 架构:Jenkins Master 负责管理任务和协调工作,Slave 节点负责执行实际的构建任务。通过分布式构建,可以提高性能,特别是在多项目、多平台的情况下。
6. 实时构建和反馈
Jenkins 提供 实时反馈 功能,用户可以随时查看构建的状态、进度和日志。(1)构建状态指示器:在 Jenkins UI 中,可以看到每个构建的状态(成功、失败、待定等)。(2)构建日志:可以查看详细的构建过程日志,帮助开发人员调试构建失败的原因。
7. 集成单元测试和代码分析
Jenkins 集成了 单元测试 和 静态代码分析,通过插件与测试框架(如 JUnit、TestNG)以及代码质量工具(如 SonarQube)配合使用。(1)自动运行单元测试:每次构建时,Jenkins 会运行预设的单元测试,确保代码质量。(2)代码覆盖率报告:可以生成代码覆盖率报告,帮助开发团队分析测试的覆盖情况。(3)静态代码分析:集成工具(如 SonarQube)进行静态代码分析,检测潜在的代码问题(如代码风格、复杂度、潜在漏洞等)。
8. 安全性和用户管理
Jenkins 提供 灵活的权限管理 和 安全控制,确保团队中的不同成员能够有权限地使用 Jenkins。(1)用户认证:支持多种身份验证方式,如基于 LDAP、GitHub、SAML 等的身份认证。(2)角色-based访问控制(RBAC):可以设置不同的权限和角色,以控制谁可以查看、配置、触发构建等操作。(3)审计日志:可以查看和记录所有的操作历史,确保审计可追溯。
9. 可视化和报告
Jenkins 提供了强大的 可视化界面,使得团队能够轻松查看构建过程、状态以及历史记录。(1)构建历史:可以查看每次构建的详细信息,包括日志、测试结果、部署状态等。(2)构建趋势图:通过插件生成图表,展示构建成功、失败、警告等趋势,帮助团队识别问题模式。
10. 多平台支持
Jenkins 可以在多个操作系统上运行,包括 Windows、Linux、macOS 等,并且可以与多种平台的构建工具和云服务配合使用。支持在不同操作系统下执行任务,适用于跨平台开发项目。同时支持与 Docker、Kubernetes 等容器平台的无缝集成,便于在容器中构建和部署应用。
11. 集成与扩展
Jenkins 可以与其他开发和运维工具集成,支持多种工作流和开发生命周期管理工具。(1)集成项目管理工具:例如 Jira、Trello 等,用于追踪构建任务、Bug 和功能请求。(2)与云服务集成:支持与 AWS、Azure、Google Cloud 等云服务平台的集成,进行云端部署和自动扩展。

二、Jenkins软件安装

首先在官网下载Jenkins:Download and deploy

在官网下找到指定电脑系统的安装包下载,存入目标文件夹。

然后开始安装Jenkins软件。 

 

选择自己目标文件夹进行安装: 

选择安装方式,如果选择下图所示方式,需要配置成员安全组策略:

登陆账号可以通过控制面板---用户账户查询:

然后选择用户账户--进入修改账户界面 

 

可以通过下列内容查询账户名称、账户密码。并可以添加用户,但是由于Windows家庭版本系统不支持安全组策略, secpol.msc和gpedit.msc无法通过win+R运行服务中打开。

 

三、解决Windows家庭版系统的账户domain user无法被系统识别问题,安全成员组策略问题

 需要通过阅读微软官方文章:Where to download GPEdit.msc for Windows 10 Home? - Microsoft Community

然后打开下载链接:How To Enable Group Policy Editor (gpedit.msc) In Windows 10 Home

运行CMD 命令行,下载安装组策略 :

FOR %F IN ("%SystemRoot%\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Package~*.mum") DO (DISM /Online /NoRestart /Add-Package:"%F")
FOR %F IN ("%SystemRoot%\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~*.mum") DO (DISM /Online /NoRestart /Add-Package:"%F")

然后运行

Run gpedit.msc

进行组策略设置,将自己目标用户加入到成员及组安全策略中,在Jenkins账号密码处输入该成员的账号与密码。


http://www.kler.cn/a/505936.html

相关文章:

  • 软件测试 —— 自动化测试(Selenium)
  • Android 高德地图API(新版)
  • C#读取本地网络配置信息全攻略
  • 微信小程序实现个人中心页面
  • 从玩具到工业控制--51单片机的跨界传奇【2】
  • Python调用go语言编译的库
  • CDH5.16.2部署
  • elastic聚合总结
  • STM32 HAL库函数入门指南:从原理到实践
  • Flutter使用BorderRadiusTween实现由矩形变成圆形的动画
  • CPU缓存学习
  • 关于Profinet 从站转 EtherNet/IP 从站网关详细说明
  • 3. Flink 窗口
  • Mysql--重点篇--索引(索引分类,Hash和B-tree索引,聚簇和非聚簇索引,回表查询,覆盖索引,索引工作原理,索引失效,索引创建原则等)
  • 计算机网络_重点梳理
  • 双端队列实战 实现滑动窗口 用LinkedList的基类双端队列Deque实现 洛谷[P1886]
  • 金融项目实战 05|Python实现接口自动化——登录接口
  • VMWARE linux LVM 扩容磁盘分区
  • lqb.key按键全套
  • 如果 iPhone 丢失或被盗,如何远程擦除 iPhone?
  • .NET 内存管理释放的两种方式
  • 力扣经典练习题之70.爬楼梯
  • 类型安全与代码复用的C# 泛型
  • Hypium UIViewer 让 MacOS 与鸿蒙NEXT手机实现多屏协同
  • 硬件设计-齐纳管
  • ESXi 切换硬盘直通后无法恢复的解决办法