在 Mac M1 上使用 Docker 运行 Jenkins

news/2024/12/19 9:02:12/

在 Mac M1 上使用 Docker 运行 Jenkins,你需要注意以下几点:

1. 安装 Docker Desktop

首先,确保你已在 Mac M1 上安装并配置了 Docker Desktop。你可以从 Docker 官方网站 下载并安装适用于 Apple Silicon(M1)的版本。

2. 拉取 Jenkins 镜像

为了使用 Jenkins,你需要拉取 Jenkins 的 Docker 镜像。可以运行以下命令:

docker pull jenkins/jenkins:lts

lts 是 Jenkins 的长期支持版本。如果你需要其他版本的 Jenkins,可以根据需要指定不同的标签。

3. 配置 Jenkins 容器

可以通过以下命令启动 Jenkins 容器:

docker run -d -p 8080:8080 -p 50000:50000 --name jenkins --restart unless-stopped jenkins/jenkins:lts

参数说明:

  • -d:后台运行容器
  • -p 8080:8080:将主机的 8080 端口映射到容器的 8080 端口,这是 Jenkins Web 界面的默认端口。
  • -p 50000:50000:将主机的 50000 端口映射到容器的 50000 端口,这是用于 Jenkins 节点之间通信的端口。
  • --name jenkins:为容器指定名称为 jenkins
  • --restart unless-stopped:容器停止时,自动重启,除非手动停止。

4. 获取 Jenkins 初始密码

容器启动后,首次访问 Jenkins Web 界面时,需要提供初始管理员密码。可以通过以下命令获取初始密码:

docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

这会输出一个随机生成的密码,复制它。

5. 访问 Jenkins Web 界面

在浏览器中访问 http://localhost:8080,输入之前获取的初始管理员密码。

6. 安装推荐插件

完成初始设置后,Jenkins 会提示你安装插件。可以选择安装 “推荐插件” 来快速配置 Jenkins 环境。

7. 配置完成后

安装插件并设置 Jenkins 后,你就可以创建任务和配置 Jenkins 环境以执行 CI/CD 流程。

注意事项

  • M1 特性:由于 Apple Silicon(M1)芯片架构的不同,某些 Docker 镜像可能需要特定的支持。确保使用适用于 ARM64 架构的镜像,Jenkins 官方的 jenkins/jenkins:lts 镜像应该已经为 ARM64 架构提供了支持。

  • 持久化数据:如果你希望保存 Jenkins 的配置和构建数据,可以将 /var/jenkins_home 目录映射到主机上的某个目录。例如:

    docker run -d -p 8080:8080 -p 50000:50000 --name jenkins --restart unless-stopped -v /your/local/directory:/var/jenkins_home jenkins/jenkins:lts
    

这样,Jenkins 的所有数据都会保存到指定的本地目录中。

希望这些步骤对你有所帮助!如果你有其他问题,随时告诉我。


http://www.ppmy.cn/news/1556348.html

相关文章

数据结构(Java版)第六期:LinkedList与链表(一)

目录 一、链表 1.1. 链表的概念及结构 1.2. 链表的实现 专栏:数据结构(Java版) 个人主页:手握风云 一、链表 1.1. 链表的概念及结构 链表是⼀种物理存储结构上⾮连续存储结构,数据元素的逻辑顺序是通过链表中的引⽤链接次序实现的。与火车…

如何发挥网络爬虫利器phpSpider最大功效

要发挥网络爬虫利器phpSpider的最大功效,可以从以下几个方面入手: 一、基础配置与优化 安装与配置: 确保PHP环境已正确安装,并通过Composer等工具安装phpSpider及其依赖。根据目标网站的特点,合理设置phpSpider的配置…

夜成都APP前端代码模板开源-供学习交流-不限制商用-夜成都视频交友生活交流APP开源-优雅草2024年12月14日

夜成都APP前端代码模板开源-供学习交流-不限制商用-夜成都视频交友生活交流APP开源-优雅草2024年12月14日 介绍 夜成都APP-成都夜生活–是一款展示成都丰富多彩夜生活的APP,城市的灯光星星点点地亮起,成都人的夜生活就在灯光璀璨中蔓延开来&#xff0c…

wrk如何测试post请求

wrk git地址 https://github.com/wg/wrk wrk 默认是针对 GET 请求的,但它也可以通过添加自定义的 HTTP 请求体和 头部信息来进行 POST 请求的压测。以下是详细的步骤: wrk -t4 -c100 -d30s -s post.lua http://example.com-t4:使用 4 个线…

面试小札:闪电五连鞭_7

1. 为什么非公平锁的吞吐量大于公平锁? 公平锁:公平锁的获取遵循先来先服务的原则。线程在获取锁时,如果锁被其他线程占用,它会进入队列等待,当锁可用时,队列中的第一个线程会获取到锁。这种机制保证了每个…

【SpringBoot 调度任务】

在 Spring Boot 中实现调度任务&#xff08;Scheduled Tasks&#xff09;&#xff0c;通过使用 EnableScheduling 和 Scheduled 注解来完成。 添加依赖启用调度任务支持创建调度任务运行应用程序 添加依赖 pom.xml 文件中有以下依赖项&#xff1a; <dependency><gro…

sylar:日志管理

参照 log4j 先写一个日志系统 以下代码均在同一文件sylar/log.h 开头两行&#xff1a; #ifndef __SYLAR_LOG_H__ #define __SYLAR_LOG_H__#endif#ifndef 是 “if not defined” 的缩写&#xff0c;它是一个预处理指令&#xff0c;去检查在当前的编译阶段&#xff0c;SYLAR_L…

windows C#-扩展方式的常见使用模式

集合功能 过去&#xff0c;创建”集合类”通常是为了使给定类型实现 System.Collections.Generic.IEnumerable<T> 接口&#xff0c;并实现对该类型集合的功能。 创建这种类型的集合对象没有任何问题&#xff0c;但也可以通过对 System.Collections.Generic.IEnumerable&…