使用 Docker 检查 Jenkins

JenkinsBeginner
立即练习

简介

在本实验中,你将学习如何在 LabEx 的 Jenkins 环境中检查运行于 Docker 容器内的 Jenkins。Jenkins 服务已经安装并启动,可通过 http://localhost:8080 访问,因此你可以专注于理解 Docker 部署模型,而无需等待繁琐的安装过程。

你将练习以下操作:

  • 检查宿主机上的 Docker 是否可用。
  • 识别正在运行的 Jenkins 容器和镜像。
  • 检查 Jenkins 使用的发布端口。
  • 定位容器内的 Jenkins 主目录数据。
  • 读取容器日志并打开 Jenkins Web 界面。

这些是在基于 Docker 的开发和培训环境中操作 Jenkins 的实用技能。

检查 Docker 环境

在此步骤中,你将确认 Docker 是否可用,以及 Jenkins 环境是否运行在 Docker 之上。

在 LabEx 虚拟机中打开终端,检查 Docker 版本:

docker --version

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

Docker version ...

接下来,列出正在运行的容器:

docker ps

查找名为 jenkins 的容器。这是整个实验中使用的 Jenkins 控制器。输出包含多个列,但重要的字段是镜像名称、端口映射和容器名称:

CONTAINER ID   IMAGE                    ...   PORTS                  NAMES
...            jenkins/jenkins:latest   ...   0.0.0.0:8080->8080/tcp jenkins

关键信息是容器名称、镜像和端口映射。在本实验中,你无需启动或删除任何容器。

检查 Jenkins 镜像

在此步骤中,你将识别正在运行的 Jenkins 容器所使用的 Docker 镜像。

运行以下命令:

docker inspect jenkins --format '{{.Config.Image}}'

这将打印出用于创建该容器的镜像名称。在此环境中,它应该显示一个 Jenkins 镜像:

jenkins/jenkins:latest

你也可以列出本地镜像:

docker images jenkins/jenkins

具体的镜像 ID 和创建时间可能会有所不同,但仓库名称应为 jenkins/jenkins

REPOSITORY        TAG       IMAGE ID       CREATED       SIZE
jenkins/jenkins   latest    ...            ...           ...

这有助于你将浏览器中运行的服务与提供 Jenkins 的容器镜像关联起来。

检查 Jenkins 端口和数据

在此步骤中,你将检查容器使用的网络端口和 Jenkins 主目录。

Jenkins 使用端口 8080 作为 Web 界面。检查已发布的端口:

docker port jenkins

你应该会看到端口 8080 已发布在宿主机上,类似于:

8080/tcp -> 0.0.0.0:8080
8080/tcp -> :::8080

现在检查容器内的 Jenkins 主目录:

docker exec jenkins ls /var/jenkins_home

你应该能看到 Jenkins 的数据,例如任务(jobs)、插件(plugins)、日志或配置文件:

config.xml
jobs
plugins
...

Jenkins 将其配置和任务数据保存在 /var/jenkins_home 中,因此该目录是进行备份或故障排查时的关键位置。

读取 Jenkins 容器日志

在此步骤中,你将读取 Jenkins 容器的日志。当 Jenkins 无法启动或行为异常时,日志通常是首要检查的地方。

运行:

docker logs --tail 30 jenkins

输出应包含 Jenkins 的启动或运行时消息。你可能会看到 Jenkins 版本、插件消息或 HTTP 服务器启动日志。

具体的行内容可能有所不同,但该命令应返回正在运行的 jenkins 容器的最新日志。

打开 Jenkins Web 界面

在此步骤中,你将把所检查的 Docker 容器与 Jenkins Web 界面关联起来。

从桌面界面打开 Firefox 浏览器。浏览器会自动打开 Jenkins 地址:

http://localhost:8080

在此环境中无需登录。

你应该能看到 Jenkins 仪表板。

Jenkins 仪表板

这证实了 jenkins Docker 容器正在通过端口 8080 提供 Jenkins Web UI 服务。

总结

在本实验中,你检查了一个基于 Docker 运行的 Jenkins 部署。

你练习了以下操作:

  • 确认 Docker 可用。
  • 识别正在运行的 Jenkins 容器。
  • 检查 Jenkins Docker 镜像。
  • 检查端口 8080 的暴露情况。
  • 检查 /var/jenkins_home
  • 读取 Jenkins 容器日志。
  • 打开 Jenkins Web 仪表板。

这些技能有助于你理解和排查基于 Docker 的 Jenkins 环境,而无需从头开始重建控制器。