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

Jenkins 安装、部署与配置

引言

在软件开发领域,持续集成(CI)和持续部署(CD)是提高代码质量和开发效率的关键实践。Jenkins 是一款开源的持续集成/持续部署服务器,以其灵活性和丰富的插件生态系统而闻名。本文将详细介绍 Jenkins 的安装、部署以及基本配置流程,帮助你搭建自己的 CI/CD 流水线。

Jenkins 的安装

Windows 平台安装

  1. 下载Jenkins
    访问 Jenkins 官方网站 jenkins.io,下载适用于 Windows 的 .war 文件或 Windows 安装包。

  2. 运行安装包
    双击下载的安装包,按照提示完成安装过程。

  3. 启动 Jenkins
    在安装完成后,Jenkins 会自动启动并打开浏览器显示初始配置页面。

Linux 平台安装

  1. 添加 Jenkins 官方仓库
    对于 Ubuntu/Debian 系统,可以通过下面的命令添加 Jenkins 的官方 APT 仓库:

    1wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
    2sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
  2. 更新并安装 Jenkins
    更新系统包列表,并安装 Jenkins:

    1sudo apt-get update
    2sudo apt-get install jenkins
  3. 启动 Jenkins
    启动 Jenkins 服务:

    1sudo systemctl start jenkins

    并且可以将其设置为开机启动:

    1sudo systemctl enable jenkins

macOS 平台安装

  1. 使用 Homebrew 安装
    如果你使用 macOS,可以通过 Homebrew 安装 Jenkins:

    1brew tap homebrew/cask
    2brew cask install jenkins
  2. 启动 Jenkins
    启动 Jenkins 服务:

    1open /Applications/Jenkins\ &\ UI.app

Jenkins 的部署与配置

初始配置

无论在哪种操作系统上安装 Jenkins,首次启动时都会出现一个初始化配置界面,要求你输入管理员密码。此密码通常存储在 /var/jenkins_home/secrets/initialAdminPassword 文件中(Linux 和 macOS)或在 Windows 中的 Jenkins 安装目录下相应位置。

配置 Jenkins

网络配置

确保 Jenkins 服务器能够访问互联网,以便下载插件和更新。

插件安装

Jenkins 提供了大量的插件,可以根据项目需求安装不同的插件。例如,对于 Java 项目,可能需要安装 Maven、Git 等插件。

  1. 启用插件管理器
    登录 Jenkins 后,在左侧菜单栏选择“Manage Jenkins” -> “Manage Plugins”。

  2. 搜索并安装插件
    在“Available”标签页中搜索需要的插件并安装。

创建 Jenkins Job

创建一个 Jenkins Job 是为了自动化构建、测试和部署的过程。

  1. 创建新任务
    从 Jenkins 主界面,点击“New Item”。

  2. 配置构建触发器
    在“Build Triggers”部分,可以选择“Poll SCM”来定期检查源代码变更,或者选择“GitHub hook trigger for GITScm polling”等,以便在代码提交时自动触发构建。

  3. 配置源代码管理
    在“Source Code Management”部分,配置 Git 或 SVN 等源代码管理系统。

  4. 配置构建环境
    在“Build Environment”部分,可以配置环境变量或执行 shell 命令。

  5. 配置构建步骤
    在“Build”部分,添加构建步骤,如执行 Maven 或 Gradle 命令。

  6. 配置构建后操作
    在“Post-build Actions”部分,可以配置邮件通知、归档构建产物等操作。

高级配置

安全性配置
  • 设置安全认证
    通过“Manage Jenkins” -> “Configure Global Security”,可以设置 Jenkins 的安全认证方式,如用户名/密码或 SSH 密钥等。

  • 网络防火墙配置
    确保 Jenkins 服务器的端口(默认为 8080)可以通过防火墙。

系统监控
  • 安装监控插件
    可以安装插件如“Jenkins Monitor Plugin”来监控 Jenkins 的性能和资源使用情况。

结论

Jenkins 是一个强大的 CI/CD 工具,通过本文的指导,你应该能够顺利地在你的系统上安装和配置 Jenkins。无论是小团队还是大企业,Jenkins 都能提供灵活且可扩展的解决方案,帮助你实现自动化构建、测试和部署的目标。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • JVM:自动垃圾回收
  • flutter ios打包 xcode报错module ‘xxx‘ not found
  • Python爬虫入门篇学习记录
  • 使用Nginx实现高效负载均衡
  • 零基础STM32单片机编程入门(十五) DHT11温湿度传感器模块实战含源码
  • Guava LocalCache源码分析:LocalCache生成
  • 在组件中显示tuku的照片
  • 记录一次Android推流、录像踩坑过程
  • 解决TypeError: __init__() takes 1 positional argument but 2 were given
  • 使用Python Turtle绘制圣诞树和装饰
  • 使用 exe4j 转换 Java jar 程序为 Windows 平台可执行文件 (.exe)
  • WebSocket实现群聊功能、房间隔离
  • 字节抖音电商 后端开发岗位 一面
  • 图像边缘检测中Sobel算子的原理,并附OpenCV和Matlab的示例代码
  • 安全防御:智能选路
  • 「前端早读君006」移动开发必备:那些玩转H5的小技巧
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • CSS实用技巧干货
  • Java到底能干嘛?
  • Java方法详解
  • Laravel Telescope:优雅的应用调试工具
  • Linux Process Manage
  • linux安装openssl、swoole等扩展的具体步骤
  • Mybatis初体验
  • opencv python Meanshift 和 Camshift
  • SpiderData 2019年2月25日 DApp数据排行榜
  • underscore源码剖析之整体架构
  • ViewService——一种保证客户端与服务端同步的方法
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • Vue官网教程学习过程中值得记录的一些事情
  • 大整数乘法-表格法
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 构造函数(constructor)与原型链(prototype)关系
  • 聊聊directory traversal attack
  • 漂亮刷新控件-iOS
  • 前端技术周刊 2019-01-14:客户端存储
  • 微信开源mars源码分析1—上层samples分析
  • 详解移动APP与web APP的区别
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • (¥1011)-(一千零一拾一元整)输出
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (Ruby)Ubuntu12.04安装Rails环境
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (二)fiber的基本认识
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (四)opengl函数加载和错误处理
  • (译) 函数式 JS #1:简介
  • (转)树状数组
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .Net 执行Linux下多行shell命令方法
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • .Net的C#语言取月份数值对应的MonthName值
  • .net解析传过来的xml_DOM4J解析XML文件