在 M1 Mac 上安装 Docker 和 Jenkins
概述
本文将指导您在 M1 Mac 上安装 Docker 和 Jenkins。通过以下步骤,您将能够顺利完成这项工作并开始使用 Jenkins 进行持续集成和持续部署(CI/CD)工作流。
完整流程
以下是安装 Docker 和 Jenkins 的步骤表格:
步骤 | 描述 | 命令 |
---|---|---|
1 | 安装 Homebrew | `/bin/bash -c "$(curl -fsSL |
2 | 安装 Docker | brew install --cask docker |
3 | 启动 Docker | 打开 Docker 应用程序 |
4 | 安装 Jenkins Docker 镜像 | docker pull jenkins/jenkins:lts |
5 | 运行 Jenkins 容器 | docker run -p 8080:8080 jenkins/jenkins:lts |
6 | 获取 Jenkins 初始密码 | docker exec -it <容器ID> cat /var/jenkins_home/secrets/initialAdminPassword |
7 | 在浏览器中访问 Jenkins | http://localhost:8080 |
每一步的详细说明
步骤 1: 安装 Homebrew
Homebrew 是一个非常流行的 macOS 包管理工具,可以帮助我们方便地安装其他软件。
/bin/bash -c "$(curl -fsSL
这条命令会下载并安装 Homebrew 到你的 Mac 上。
步骤 2: 安装 Docker
使用 Homebrew 来安装 Docker。
brew install --cask docker
此命令通过 Homebrew 安装 Docker Desktop,方便快速管理 Docker 镜像和容器。
步骤 3: 启动 Docker
安装完成后,您需要启动 Docker。
打开应用程序文件夹,找到 Docker 并启动它。确保 Docker 正在运行。
步骤 4: 安装 Jenkins Docker 镜像
使用 Docker 拉取 Jenkins 的官方镜像。
docker pull jenkins/jenkins:lts
此命令从 Docker Hub 下载 Jenkins 的长期支持(LTS)版镜像。
步骤 5: 运行 Jenkins 容器
运行 Jenkins 容器,将其绑定到本地的 8080 端口。
docker run -p 8080:8080 jenkins/jenkins:lts
这条命令启动一个新的 Jenkins 实例,并将容器内的8080端口映射到主机的8080端口。
步骤 6: 获取 Jenkins 初始密码
为了首次登录 Jenkins,您需要获取初始管理员密码。
docker exec -it <容器ID> cat /var/jenkins_home/secrets/initialAdminPassword
此命令进入运行中的 Jenkins 容器,并读取初始管理员密码。请替换
<容器ID>
为您 Jenkins 容器的实际 ID。
步骤 7: 在浏览器中访问 Jenkins
打开浏览器并输入以下地址:
http://localhost:8080
此地址是您在步骤 5 中映射的端口,您可以通过它访问 Jenkins 的用户界面。
结构图
类图
classDiagram
class Docker {
+ pull()
+ run()
}
class Jenkins {
+ start()
+ getInitialPassword()
}
Docker --> Jenkins : uses
状态图
stateDiagram
[*] --> HomebrewInstalled
HomebrewInstalled --> DockerInstalled
DockerInstalled --> DockerRunning
DockerRunning --> JenkinsImageDownloaded
JenkinsImageDownloaded --> JenkinsContainerRunning
JenkinsContainerRunning --> InitialPasswordRetrieved
InitialPasswordRetrieved --> JenkinsAccessed
结尾
通过以上步骤,您不仅成功在 M1 Mac 上安装了 Docker 和 Jenkins,现在您还能利用 Jenkins 快速配置和部署您的应用程序。后续您可以探索 Jenkins 的插件生态系统,根据项目需要扩展其功能。如果在安装过程中遇到任何问题,请查看官方文档或在线社区,祝您使用愉快!