如何在Ubuntu22.04上安装Jenkins

来自菜鸟教程
跳转至:导航、​搜索

介绍

Jenkins 是一个开源自动化服务器,可自动执行软件持续集成和交付中涉及的重复性技术任务。 Jenkins 是基于 Java 的,从 Ubuntu 软件包安装或通过下载和运行其 Web 应用程序存档 (WAR) 文件——组成完整 Web 应用程序的文件集合,可在服务器上运行。

在本教程中,您将在 Ubuntu 22.04 上安装 Jenkins,启动开发服务器并创建一个管理用户以开始探索 Jenkins 自动化。 在本教程结束时,您将拥有一个不安全的 Jenkins 服务器,可用于开发部署。 要保护您的生产安装,请按照指南 如何在 Ubuntu 22.04 上使用 Nginx 反向代理配置 Jenkins 和 SSL。

先决条件

要遵循本教程,您将需要:

  • 按照 Ubuntu 22.04 初始服务器设置指南 配置一台 Ubuntu 22.04 服务器,配置非 root sudo 用户和防火墙。 我们建议从至少 1 GB 的 RAM 开始。 访问 Jenkins 的“硬件建议”,获取有关规划生产级 Jenkins 安装容量的指导。
  • 按照我们关于 在 Ubuntu 22.04 上安装特定版本的 OpenJDK 的指南安装了 Oracle JDK 11。

第 1 步 — 安装 Jenkins

默认 Ubuntu 软件包中包含的 Jenkins 版本通常落后于项目本身的最新可用版本。 为确保您拥有最新的修复和功能,请使用项目维护的包来安装 Jenkins。

首先,将存储库密钥添加到您的系统:

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key |sudo gpg --dearmor -o /usr/share/keyrings/jenkins.gpg

gpg --dearmor 命令用于将密钥转换为 apt 可以识别的格式。

接下来,让我们将 Debian 软件包存储库地址附加到服务器的 sources.list 中:

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

该行的 [signed-by=/usr/share/keyrings/jenkins.gpg] 部分确保 apt 将使用您刚刚下载的 GPG 密钥验证存储库中的文件。

输入两个命令后,运行 apt update 以便 apt 将使用新的存储库。

sudo apt update

最后,安装 Jenkins 及其依赖项:

sudo apt install jenkins

现在 Jenkins 及其依赖项已经就绪,我们将启动 Jenkins 服务器。

第 2 步——启动 Jenkins

现在安装了 Jenkins,使用 systemctl 启动它:

sudo systemctl start jenkins.service

由于 systemctl 不显示状态输出,我们将使用 status 命令验证 Jenkins 是否启动成功:

sudo systemctl status jenkins

如果一切顺利,状态输出的开头显示服务处于活动状态并配置为在启动时启动:

Output● jenkins.service - Jenkins Continuous Integration Server
     Loaded: loaded (/lib/systemd/system/jenkins.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-04-18 16:07:28 UTC; 2min 3s ago
   Main PID: 88180 (java)
      Tasks: 42 (limit: 4665)
     Memory: 1.1G
        CPU: 46.997s
     CGroup: /system.slice/jenkins.service
             └─88180 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080

现在 Jenkins 已启动并运行,请调整您的防火墙规则,以便您可以从 Web 浏览器访问它以完成初始设置。

第 3 步 — 打开防火墙

要设置 UFW 防火墙,请访问 使用 Ubuntu 22.04 进行初始服务器设置,第 4 步 - 设置基本防火墙 。 默认情况下,Jenkins 在端口 8080 上运行。 使用 ufw 打开该端口:

sudo ufw allow 8080

注意: 如果防火墙处于非活动状态,以下命令将允许 OpenSSH 并启用防火墙:

sudo ufw allow OpenSSH
sudo ufw enable

检查 ufw 的状态以确认新规则:

sudo ufw status

您会注意到允许从任何地方传输 8080 的流量:

OutputStatus: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
8080                       ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
8080 (v6)                  ALLOW       Anywhere (v6)

安装 Jenkins 并配置防火墙后,您已完成安装阶段并可以继续配置 Jenkins。

第 4 步 — 设置 Jenkins

要设置您的安装,请使用您的服务器域名或 IP 地址在其默认端口 8080 上访问 Jenkins:http://your_server_ip_or_domain:8080

您应该会收到 Unlock Jenkins 屏幕,其中显示初始密码的位置:

在终端窗口中,使用 cat 命令显示密码:

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

从终端复制 32 个字符的字母数字密码并将其粘贴到 管理员密码 字段中,然后单击 继续

下一个屏幕显示安装建议插件或选择特定插件的选项:

我们将单击 安装建议的插件 选项,这将立即开始安装过程。

安装完成后,系统会提示您设置第一个管理用户。 可以跳过此步骤并使用上面的初始密码以 admin 继续,但我们将花一点时间来创建用户。

注意:默认的Jenkins服务器是没有加密的,所以用这个表单提交的数据是不受保护的。 请参阅 如何在 Ubuntu 22.04 上使用 Nginx 反向代理使用 SSL 配置 Jenkins,以保护通过 Web 界面传输的用户凭据和有关构建的信息。


输入用户名和密码:

您将收到一个 Instance Configuration 页面,要求您确认 Jenkins 实例的首选 URL。 确认您的服务器的域名或服务器的 IP 地址:

确认相应信息后,单击保存并完成。 您将收到一个确认页面,确认 “Jenkins 已准备就绪!”

点击 Start using Jenkins 访问 Jenkins 主仪表板:

至此,您已经完成了 Jenkins 的成功安装。

结论

在本教程中,您使用项目提供的软件包安装了 Jenkins,启动了服务器,打开了防火墙,并创建了一个管理用户。 至此,您可以开始探索 Jenkins。

完成探索后,请按照指南 How to Configure Jenkins with SSL Using an Nginx Reverse Proxy on Ubuntu 22.04 保护您的密码,以及任何敏感的系统或产品信息您的机器和服务器以纯文本形式继续使用 Jenkins。

要了解有关使用 Jenkins 可以做什么的更多信息,请查看有关该主题的其他教程: