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

如何在 Ubuntu 22.04 服务器上安装 Jenkins

简介

Jenkins 是一个非常流行的免费自动化工具,每个人都应该了解它。DevOps 工程师使用它来自动化代码构建、测试和部署。本文将重点介绍如何在新的 Ubuntu LTS 版本,即 Ubuntu 22.04 中安装 Jenkins。

但在此之前,让我们快速讨论一下 Jenkins 是什么。

什么是 Jenkins

Jenkins 是开源自动化服务器的首选。它是目前最流行的 CI/CD 工具。它用于自动化软件开发任务,例如测试代码更改、打包以及在 SDLC 阶段末尾进行部署。

主要功能:

  • 管道自动化: 将 CI/CD 流程定义为代码。
  • 可扩展性: 支持超过 1500 个插件,用于各种集成(例如,Git、Docker、Kubernetes)。
  • 分布式构建: 在多台机器上运行作业以实现可扩展性。
  • 轻松集成: 可以与众多工具和平台(例如,Maven、Gradle、GitHub)协同工作。
  • 用户友好的界面: 简单的 Web UI,用于作业管理和监控。
  • 强大的社区支持: 定期更新和广泛的文档。

准备工作

服务器准备

必要前提:

  • 一个充满求知欲的大脑。
  • 一台 Linux 服务器(推荐腾讯云、阿里云或雨云等)。

我将以 雨云 为例,带大家创建一台自己的云服务器,以便学习本篇文章的内容。

注册链接: https://rainyun.ivwv.site

创建雨云服务器

以下步骤仅供参考,请根据实际需求选择配置。

  • 点击 云产品云服务器立即购买
  • 选择距离你较近的区域,以保证低延迟。

  • 按照自己需求选择配置,选择Ubuntu 22.04 版本,按照自己需求是否预装Docker。
  • 最后按照提示进行购买。
  • 购买后等待机器部署完毕,点击刚刚创建好的服务器,进入管理面板,找到远程连接相关信息。

  • 我们使用 PowerShell 进行 SSH 远程连接到服务器,Win+R 打开运行窗口,输入 powershell 后点击确定。

  • 输入 ssh root@你的服务器IP 例如 ssh root@154.9.227.239 回车后,首次需要输入 yes,再次回车后即可登录服务器。

  • 到此为止,我们的云服务器就远程连接上了。

如何在 Ubuntu 22.04 上安装 Jenkins

让我们从更新你的系统并安装必要的依赖项开始。

第一步:更新系统

在安装新软件之前更新你的系统软件包始终是一个明智的选择。打开终端并运行以下命令:

sudo apt update

sudo apt upgrade

它会更新你系统上使用的软件包索引。它会知道有哪些软件包及其版本,然后安装所有已安装的新版本。

第二步:安装 Java

第二步是在你的 Ubuntu 服务器上安装 Java,因为 Jenkins 需要它才能运行。Jenkins 官方支持 Java 11Java 17。我们将安装 OpenJDK 17,这是 Ubuntu 22.04 推荐的版本。

要安装 Java 17,请运行以下命令:

sudo apt install openjdk-17-jdk

安装 Java 后,通过检查版本来验证安装:

java -version

你应该看到类似于以下的输出:

openjdk version "17.0.x"
OpenJDK Runtime Environment (build 17.0.x+xx)
OpenJDK 64-Bit Server VM (build 17.0.x+xx, mixed mode)

安装 Java 后,我们准备好进行下一步。

第三步:添加 Jenkins 存储库

首先将 Jenkins GPG 密钥导入你的系统。请注意,下面提到的 URL 将来可能会更改,因此请在使用前进行验证。

sudo wget -O /usr/share/keyrings/jenkins-keyring.asc https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key

接下来,将 Jenkins 存储库添加到你系统的 sources.list:

sudo sh -c 'echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian binary/ > /etc/apt/sources.list.d/jenkins.list'

第四步:安装 Jenkins

Jenkins 在默认的 Ubuntu 存储库中不可用,因此我们需要添加 Jenkins 存储库,然后从那里安装 Jenkins。

添加存储库后,更新软件包列表并通过运行以下命令安装 Jenkins:

sudo apt update

sudo apt install jenkins

安装 Jenkins 后,它将自动作为服务启动。

第五步:启动并启用 Jenkins

现在 Jenkins 已经安装,我们需要启动并启用 Jenkins 服务,以便它在启动时自动运行。

使用以下命令启动 Jenkins:

sudo systemctl start jenkins

为确保 Jenkins 在启动时启动,请使用以下命令启用它:

sudo systemctl enable jenkins

你可以检查 Jenkins 的状态以确保它正在运行:

sudo systemctl status jenkins

你应该看到一个输出,指示 Jenkins 处于活动状态并正在运行。

第六步:调整防火墙

Jenkins 托管在端口 8080 上,这是默认端口。如果你的服务器具有内置防火墙,则必须允许此端口上的流量。为此,请运行以下命令:

对于 UFW(Uncomplicated Firewall)用户,允许端口 8080:

sudo ufw allow 8080
sudo ufw reload

如果你正在使用其他防火墙,例如 iptables,请确保它允许端口 8080 上的流量。

要验证 UFW 状态并确认 Jenkins 已通过防火墙,请运行以下命令:

sudo ufw status

第七步:访问 Jenkins Web 界面

Jenkins 现在已安装并在你的服务器上运行。要完成设置,你需要访问 Jenkins Web 界面。打开 Web 浏览器并输入你的服务器的 IP 地址,后跟端口 8080:

http://your-server-ip:8080

如果你在本地运行 Jenkins,请使用:

http://localhost:8080

第八步:配置 Jenkins

首次访问 Jenkins 时,它会要求提供初始管理密码。要检索此密码,请在终端中运行以下命令:

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

你会看到一长串字符。复制此密码并将其粘贴到 Jenkins 设置屏幕中。

输入初始管理密码后,Jenkins 会将你带到 Customize Jenkins 页面。在这里,你将被要求安装插件。建议安装建议的插件以获取基本的 Jenkins 功能。

单击 Install suggested plugins 开始该过程。

Jenkins 将自动安装最常用的插件,这可能需要几分钟,具体取决于你的服务器速度。

第九步:创建第一个管理员用户

安装插件后,Jenkins 将提示你创建第一个管理员用户。填写如下所示的必填字段:

此帐户将用作 Jenkins 管理员用户。

创建用户后,单击 Save and Finish

你已成功在 Ubuntu 22.04 上安装了 Jenkins。

接下来,让我们使用 Jenkins 创建一个简单的管道。

使用 Jenkins 创建一个简单的管道

在 Jenkins 中创建你的第一个基本管道是开始自动化的好方法。Jenkins 管道将你的 CI/CD 流程的步骤定义为代码,这些代码可以进行版本控制并轻松重复使用。以下是使用 Jenkins 创建非常基本管道的分步指南。

在你的 Jenkins 仪表板上,单击 New Item

命名你的作业(例如,“Demo”),选择 Pipeline 作为项目类型,然后单击 OK

向下滚动到 Pipeline 部分。在 Definition 下拉列表中,选择 Pipeline script

在出现的文本框中,输入一个非常基本的管道脚本。这是一个简单的示例:

pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                echo 'Building...'
            }
        }
        stage('Test') {
            steps {
                echo 'Testing...'
            }
        }
        stage('Deploy') {
            steps {
                echo 'Deploying...'
            }
        }
    }
}

此管道的功能:

  • pipeline {}:定义整个管道。
  • agent any:在任何可用的 Jenkins 代理上运行管道。
  • stages {}:列出管道的阶段。
  • stage(‘Build’), stage(‘Test’), stage(‘Deploy’):定义构建、测试和部署的各个阶段。
  • steps {}:每个阶段中发生的实际操作(在本例中,是简单的 echo 语句)。

编写完管道脚本后,单击 Save。在作业的仪表板上,单击 Build Now 以运行管道。

你可以在左侧的 Build History 部分中查看进度。单击构建号以查看控制台输出并检查每个阶段的结果。

它将显示管道已成功执行。

构建完成后,单击构建号,然后单击 Pipeline StepsPipeline Graph

Jenkins 将以可视方式表示管道,显示每个阶段以及它是否通过或失败。

结论

在本指南中,我们逐步解释了如何在 Ubuntu 22.04 上安装 Jenkins。我们介绍了安装 Java、添加 Jenkins 存储库、安装 Jenkins 服务器以及启动 Jenkins 服务器。再次说明,从 Jenkins 的角度来看,现在我们已经启动并运行了它,你可以开始使用此 CI/CD 管道集成系统来自动化你的开发操作。

雨云 - 新一代云服务提供商: https://rainyun.ivwv.site
我的博客:https://blog.ivwv.site


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

相关文章:

  • conda 环境报错error while loading shared libraries: libpython3.9.so.1.0
  • 【CryptoJS库AES加密】
  • docker部署微信小程序自动构建发布和更新
  • 牵手红娘:牵手App红娘助力“牵手”,脱单精准更便捷
  • shell脚本定义特殊字符导致执行mysql文件错误的问题
  • 菜鸟带新鸟——基于EPlan2022的部件库制作
  • 【LuaFramework】LuaFramework_UGUI_V2框架学习
  • 精彩回顾|在2024全球智博会 Semantic Kernel 开发者日中国站开启企业全智能化应用场景
  • 【超详细实操内容】django的身份验证系统之用户登录与退出
  • 转型云,转型AI,转型大模型,微软为什么如此人间清醒?
  • iClient3D for Cesium在Vue中快速实现场景卷帘
  • 202411 第十六届蓝桥杯青少组 STEMA 考试真题 汇总
  • JavaScript--WebAPI查缺补漏
  • 绿盟CSSP靶场-挂载虚拟化磁盘
  • Android Bootable Recovery 中的 `freecache.cpp` 文件详解
  • Java成长之路(一)--SpringBoot基础学习--SpringBoot代码测试
  • iDP3复现代码数据预处理全流程(二)——vis_dataset.py
  • 解决“SVN无法上传或下载*.so、*.a等二进制文件“问题
  • 汽车经销商门店管理新趋势:信息化工具助力精益运营
  • 网安入门|前端基础之Html_css基础
  • idea2024创建JavaWeb项目以及配置Tomcat详解
  • 水利水电安全员考试题库及答案
  • 捋一捋相关性运算,以及DTD和NLP中的应用
  • 【超详细实操内容】django的身份验证系统之权限与权限管理
  • 【漏洞复现】CVE-2021-45788 SQL Injection
  • Ansible 批量管理华为 CE 交换机