Jenkins 的安装(详细教程)
文章目录
- 一、简介
- 二、安装前准备
- 三、windows 安装与启动
- 1. 方式一
- 2. 方式二
- 3. 方式三
- 四、创建管理员用户
- 五、常用设置
- 1. 配置镜像地址
- 2. 更改工作目录
- 3. 开启可注册用户
- 4. 全局变量配置
一、简介
官网:https://www.jenkins.io
中文文档:https://www.jenkins.io/zh/doc/
Jenkins
是一个开源的持续集成(CI)工具,用于自动化构建、测试和部署软件项目。它提供了一个易于使用和可扩展的平台,帮助团队更高效地开发和交付软件。
Jenkins
的主要特点和用途包括:
-
自动化构建:
Jenkins
可以从源代码库(如Git
、SVN
等)中获取最新的代码,并自动进行构建。它支持各种构建工具和构建脚本,如Ant、Maven、Gradle
等。 -
持续集成:
Jenkins
可以将多个开发者的代码集成到共享的主线分支中,并定期执行构建和测试。这有助于发现和解决集成问题,确保软件的稳定性和可靠性。 -
测试自动化:
Jenkins
可以与各种测试框架和工具集成,如JUnit、Selenium、JMeter
等。它可以自动执行各种测试,并生成测试报告和分析结果。 -
部署自动化:
Jenkins
可以自动化部署应用程序到目标服务器或云平台。它支持各种部署工具和配置管理工具,如Docker、Kubernetes、Ansible
等。 -
插件生态系统:
Jenkins
拥有一个强大的插件生态系统,提供了各种功能和集成选项。用户可以根据需要选择和安装插件,以扩展和定制Jenkins
的功能。
总之,Jenkins
是一个功能强大、易于使用的持续集成工具,可以帮助团队实现软件开发和交付的自动化。通过自动化构建、测试和部署过程,可以提高团队的效率、减少错误,并加速软件项目的交付。
二、安装前准备
在安装 jenkins
之前要先确保电脑上是否已配置过 Java
的环境变量,可调出命令窗口(win + R
再输入 cmd
),通过 java -version
来检验
如果没有显示 Java
的版本信息,就需要先配置 Java
环境变量,具体操作可参见:Java-环境配置(详细教程)
三、windows 安装与启动
进入 Jenkins
的 官方下载页面
LTS
是长期支持的版本,是稳定的版本
在 Windows
下 Jenkins
的安装有三种方式:
- 方式一:下载
war
包通过命令启动 - 方式二:
war
结合tomcat
进行安装 - 方式三:下载安装程序包
msi
文件
在下载安装包之前要先确定应该下载哪个版本的 Jenkins
,Jenkins
的版本依赖于 Java
的版本,可在 Jenkins-Java Support Policy 中进行查看
如果你下载的 Jenkins
版本与本地 Java
不支持,那么 Jenkins
是无法安装成功的,比如说我电脑上 JDK
的版本是 1.8.0_172
,也就是 Java 8
,那么我只能安装 2.346.1
或者该版本之前的,在 Past Releases
上可以查看到历史版本
页面如下 :
1. 方式一
jenkins
可以通过 war
的形式安装起来,war
包可以通过 java -jar
的命令或者放到 Tomcat
上启动起来
首先需要下载 Java
所支持的 jenkins
版本,我用的时 Java-8
,所以我就下载 2.332.4
的
下载完成后,在 war
包所在目录下进入 cmd 命令
,通过以下命令
java -jar jenkins.war --httpPort=8080
当看到 Jenkins is fully up and running
就表示 jenkins
已经启动完成了
下一步:跳转至 —> 创建管理员用户
2. 方式二
Tomcat 的安装(详细教程)
按照 方式一
的步骤下载 war
包,再将 war
放到 tomcat
的 wabapps
的目录下
启动 tomcat
,访问 localhost:tomcatPort/jenkins
,例如:http://localhost:8080/jenkins
下一步:跳转至 —> 创建管理员用户
3. 方式三
在 LTS
下选择 Windows
即可下载到一个 jenkins.msi
安装程序包
注意:我没有找打 Java 8
支持的 jenkins.msi
,包括一些开源的镜像站,如果用这种方式下载 Jenkins
,建议先下载一个 JDK 11
双击运行
点击 Next
选择 安装路径
,再点击 Next
选择 Run service as LocalSystem (not recommended)
,点击 Next
设置 端口号
,测试端口号是否可行,可行之后
才能点击 Next
选择 JDK
的安装路径,再点击 Next
点击 Next
点击 Install
进行安装
点击 Finish
完成安装
四、创建管理员用户
安装完成之后在游览器上访问 localhost:port
,port
是安装时设置的端口号,比如:localhost:8080
注意:不同版本的 jenkins
页面可能会有点差异
根据提示的路径就能找到存放 管理员密码
的文件 initialAdminPassword
不过此时暂时不用着急地去粘贴 管理员密码
,因为 jenkins
的服务器在国外,到安装插件步骤时会加载得比较慢
建议先去设置成国内的镜像 —> 点击跳转查看具体步骤
配置好镜像重启后再访问 localhost:port
,从本地复制密码并粘贴到指定位置
点击 继续
如果刚刚已经换成国内的镜像网址了,所以可以直接选择 安装推荐的插件
,让它自动下一些常用的插件也很快
如果没有替换成国内镜像,直接 安装推荐的插件
会比较慢,也可以点击 选择插件来安装
,再点击 无
,不安装任何插件,再点击 安装
并且成功率比较高
对应那些安装失败的插件可以 重试
再安装,有些插件会因为依赖的关系安装不上的话就 继续
也没啥影响
创建 管理员用户
之后,点击 保存并完成
点击 保存并完成
到此为止 jenkins
就安装完成了,可以点击 开始使用 jenkins
五、常用设置
1. 配置镜像地址
在 jenkins
的工作目录 .jenkins
中,找到 hudson.model.UpdateCenter.xml
文件打开
将 https://updates.jenkins.io/update-center.json
替换成国内镜像网址(需要管理员权限修改)
- 国内镜像网址:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
- 国外镜像网址:
https://mirror.xmission.com/jenkins/updates/update-center.json
再进入到 updates
目录下,编辑 default.json
文件,将该文件中国外的地址全部替换成国内的(需要管理员权限修改)
https://www.google.com
替换成https://www.baidu.com
https://updates.jenkins.io/download
替换成https://mirrors.tuna.tsinghua.edu.cn/jenkins
修改完配置之后需要重启 jenkins
, Win + R
运行 compmgmt.msc
打开 计算机管理
界面
在 服务和应用程序
- 服务
下找到 jenkins
服务,选中右键,点击 重新启动
2. 更改工作目录
从上面安装过程可知 Jenkins
的工作目录默认在 C
盘下,而 C
盘的资源是比较珍贵的,一般情况下会尽量避免将工作目录放置 C
盘中,所以在有些情况下可能就需要更改工作目录
在 计算机管理
界面中先停止 jenkins
程序
再打开 jenkins
的安装目录,找到 jenkins.xml
文件,进行编辑
将 %ProgramData%\Jenkins\.jenkins
修改为目标目录,比如:D:\jenkins\windows\jenkins-2.440-work
重启 jenkins
即可
3. 开启可注册用户
默认情况下是不可以注册用户的,如果想要开启注册用户,以 2.440.1
的 jenkins
版本为例,在 Manage Jenkins
- Security
中选中 Security
进入到以下页面
开启 允许用户注册
,再点击 应用
和 保存
回到登录页面就能看到已经可以注册用户了
4. 全局变量配置
以 2.440.1
的 jenkins
版本为例,在 Manage Jenkins
- System Configuration
中选中 Tools
在这里就可以配置 JDK
、Ant
、Maven
等配置
参考文献:
安装 Jenkins:https://www.jenkins.io/zh/doc/book/installing/
Windows 上安装 Jenkins 教程:https://segmentfault.com/a/1190000019730287
相关文章:

Jenkins 的安装(详细教程)
文章目录 一、简介二、安装前准备三、windows 安装与启动1. 方式一2. 方式二3. 方式三 四、创建管理员用户五、常用设置1. 配置镜像地址2. 更改工作目录3. 开启可注册用户4. 全局变量配置 一、简介 官网:https://www.jenkins.io 中文文档:https://www.j…...

使用html网页播放多个视频的几种方法
前言 因为项目测试需要,我需要可以快速知道自己推流的多路视频流质量,于是我想到可以使用html网页来播放视频,实现效果极其简单,方法有好几种,以下是几种记录: 注意:测试过,VLC需要使…...

python 基础知识点(蓝桥杯python科目个人复习计划58)
今日复习内容:做题 例题1:仙境诅咒 问题描述: 在一片神秘的仙境中,有N位修仙者,他们各自在仙境中独立修炼,拥有他们独特的修炼之地和修炼之道,修炼者们彼此之间相互尊重,和平相处…...

【基于React实现共享单车管理系统】—React基础知识巩固(二)
【基于React实现共享单车管理系统】—React基础知识巩固(二) 一、React介绍 Facebook开源的一个JavaScript库React结合生态构成的一个MV*库 React的特点 Declarative(声明式编码)Component-Based(组件化编码&#…...

云桥通+跨境电商:SDWAN企业组网优化跨境网络案例
跨境电商企业在全球范围内展开业务,需构建稳定高效的网络架构以支持其电商平台运营。云桥通SDWAN企业组网技术为跨境电商提供网络连接和管理的优化,提升网络性能、可靠性和安全性。以下是一家跨境电商企业的SDWAN组网案例,详细介绍其实施情况…...

服务器有几种http强制跳转https设置方法
目前为站点安装SSL证书开启https加密访问已经是件很简单的事了,主要是免费SSL证书的普及,为大家提供了很好的基础。 Apache环境下如何http强制跳转https访问。Nginx环境下一般是通过修改“你的域名.conf”文件来实现的。 而Apache环境下通过修改.htacces…...

web坦克大战小游戏
H5小游戏源码、JS开发网页小游戏开源源码大合集。无需运行环境,解压后浏览器直接打开。有需要的订阅后,私信本人,发源码,含60+小游戏源码。如五子棋、象棋、植物大战僵尸、贪吃蛇、飞机大战、坦克大战、开心消消乐、扑鱼达人、扫雷、打地鼠、斗地主等等。 <!DOCTYPE htm…...

如何使用生成式人工智能探索视频博客的魅力?
视频博客,尤其是关于旅游的视频博客,为观众提供了一种全新的探索世界的方式。通过图像和声音的结合,观众可以身临其境地体验到旅行的乐趣和发现的喜悦。而对于内容创作者来说,旅游视频博客不仅能分享他们的旅行故事,还…...

gpt批量工具,gpt批量生成文章工具
GPT批量工具在今天的数字化时代扮演着越来越重要的角色,它们通过人工智能技术,可以自动批量生成各种类型的文章,为用户提供了便利和效率。本文将介绍5款不同的GPT批量工具,并介绍一款知名的147GPT生成工具,以及另外一款…...

Python知识汇总
重要链接: matplotlib库:matplotlib — Matplotlib 3.5.1 documentation DataFrame库:DataFrame — pandas 2.2.1 documentation (pydata.org) Python Matplotlib 实现散点图、曲线图、箱状图、柱状图示例:Python Matplotlib 实…...
WEB面试题
1.基础 Web 技术: 1.1 h5 行内元素和块级元素 行内元素不会独占一行,高度和宽度由内容决定,不能单独设置宽高, 不能设置上下的margin和padding,只能设置左右的margin和padding; …...
Android Studio 六大基本布局详解
Android应用开发中,布局是至关重要的一部分,而Android Studio作为主流的开发工具,提供了多种布局方式来灵活适应不同的界面需求。在本文中,我们将深入探讨Android Studio中的六大基本布局,旨在帮助开发者更好地理解和运…...

如何应对IT服务交付中的问题?
如何应对IT服务交付中的问题? 按需交付服务的挑战IT服务体系的复杂性恶性循环的形成学会洞察的重要性书籍简介参与方式 按需交付服务的挑战 一致性、可靠性、安全性、隐私性和成本效益的平衡:成功的按需交付服务需要满足这些要求,这需要服务…...
[Python] 缓存实用工具
cachetools 是一个 Python 库,提供了用于缓存的实用工具,包括各种缓存算法和数据结构,如 LRU(最近最少使用)缓存、TTL(时间到期)缓存等。使用 cachetools 可以轻松地在 Python 应用程序中实现缓…...

php反序列化字符逃逸
php反序列化和序列化 PHP序列化:serialize() 序列化是将变量或对象转换成字符串的过程,用于存储或传递 PHP 的值的过程中,同时不丢失其类型和结构。“序列化”是一种把对象的状态转化成字节流的机制 类似于这样的结构: O:4:&quo…...
延迟加载(Lazy Initialization)的单例模式
延迟加载(Lazy Initialization)的单例模式是一种在对象第一次被请求时才创建单例实例的设计模式。这种方法可以减少程序启动时的负载和启动时间,特别是当单例对象的创建开销较大或者在启动时不一定需要该对象时。 下面是实现延迟加载单例模式…...
C++三级专项 流感传染
时间限制:1000 内存限制:65536 有一批易感人群住在网格状的宿舍区内,宿舍区为n*n的矩阵,每个格点为一个房间,房间里可能住人,也可能空着。在第一天,有些房间里的人得了流感,以后每…...

如何用Elementor创建WordPress会员网站
在下面的文章中,我们将向您展示如何使用Elementor和MemberPress在WordPress中轻松构建会员网站。这篇文章将涵盖WordPress会员网站设置过程、会员资格和受保护内容创建、重要页面和登录表单设计、电子邮件通知管理、报告等。 目录 什么是WordPress会员网站&#x…...

【脑切片图像分割】MATLAB 图像处理 源码
1. 简单图像处理 加载图像 Brain.jpg,使用直方图和颜色分割成区域这些区域有不同的颜色。 这是一个更高级的问题,有多个解决它的方法。 例如,您可以计算具有特定数字的图像的直方图(例如 16 - 32),找到直方…...

深度学习系列61:在CPU上运行大模型
1. 快速版 1.1 llamafile https://github.com/Mozilla-Ocho/llamafile 直接下载就可以用,链接为:https://huggingface.co/jartine/llava-v1.5-7B-GGUF/resolve/main/llava-v1.5-7b-q4.llamafile?downloadtrue 启动:./llava-v1.5-7b-q4.lla…...

Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
Android Wi-Fi 连接失败日志分析
1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...