如何使用 Docker 搭建 Jenkins 环境?从安装到精通

最近有不少同学搭 jenkins 环境有问题,有的同学用 window, 有的同学用 mac, 有的同学用 linux。
还有的同学公司用 window, 家里用 mac,搭个环境头发掉了一地。。。

这回我们用 docker 去搭建 jenkins 环境,不管你是用的是什么系统,jenkins 搭建起来都是一样的步骤。

而且使用 Docker 以后,不仅是装 jenkins, 装其他的服务器环境也都是标准化流程,不需要担心系统问题了。

安装Docker

Docker 安装在 mac 和 linux 下比较简单,照着官方文档做就行了。

windows 下比较复杂,因为 Docker 整个技术都是基于 linux 容器的,在 windows 下安装会有兼容问题,不过 Docker 官方很贴心的准备了 toolbox 工具,直接下载 toolbox, 傻瓜式安装,跟普通软件没什么差别。

接下来的讲解都是基于 toolbox 工具(因为我的机器是 windows),不需要装 toolbox 的系统会更简单,全局只需要记住 docker 这一个命令就够了。

toolbox 安装好以后,先检查 docker 有没有安装成功:

$ docker --help

等待一下,如果不报错,就说明成功了。

连接虚拟机

接下来要连接虚拟机(就是一台装了 docker 的 linux)。这个虚拟机你不需要手动安装,安装 toolbox 的时候已经自动装好了。

因为有的 windows 系统是不能直接运行 docker 的, toolbox 实际上是利用 virtualbox 等工具启动一台虚拟机(Linux VM),这台虚拟机会内置 docker , 运行容器。(不是 toolbox 用户请忽略)

启动虚拟机

$ docker-machine start default

启动虚拟机以后,登录虚拟机。以后所有的 docker 操作我们就在虚拟机上去做,不在 windows 的命令行操作了。

#进入虚拟机,之后可以执行 linux 的 shell 命令了

docker-machine ssh default

(以下所有的操作都是在虚拟机上执行了)。使用 docker 命令运行 jenkins 容器:

图片

/your/home 就是本机上要保存的 jenkins 数据,你可以把项目的代码放到这个目录的 workspace 当中。

比如我想把数据保存到本机的 /c/Users/muji/jenkins 目录下, 那我会先在本地创建目录,然后把目录添加到命令当中。

运行这一条指令,会从 Docker 仓库里下载 jenkins 包自动安装到本地。官方下载会比较慢,请耐心等待。

有精力的同学可以去配置一个国内的加速地址。

运行到中途会出现 jenkins 的默认登录密码,请复制下来。不然之后要倒目录当中去找了:

图片

出现这样的,就表示安装成功了:

图片

启动成功以后。就可以在本机的 8080 端口访问 jenkins 了!

注意:windows toolbox 用户不能直接输入 http://localhost:8080, 先要找到虚拟机的 IP。

在虚拟机输入 ifconfig 查找 IP。一定要在虚拟机输入命令行,windows 下是没有 ifconfig 的,不要弄错地方了。所有操作都在虚拟机完成,讲了 3 遍了,希望你们都已经知道了。

比如我的虚拟机地址是:192.168.99.102, 接下来,我就可以通过http://http://192.168.99.102:8080 访问 jenkins 了。

图片

注意:jenkins 的一些配置安装过程比较慢,需要耐心等待加载完成。

配置好用户和密码以后,启动一个项目 demo, 构建生成 workspace 目录。

代码放到 workspace 里,这里的路径是在运行容器的时候指定的本机地址,一定要对上哦。

图片

剩下的步骤基本没什么区别了,看下构建后的结果:

在这里插入图片描述
行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群: 1007119548,里面有各种测试开发资料和技术可以一起交流哦。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取 【保证100%免费】
在这里插入图片描述

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/492916.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【黑马程序员】3、TypeScript常用类型_黑马程序员前端TypeScript教程,TypeScript零基础入门到实战全套教程

课程地址:【黑马程序员前端TypeScript教程,TypeScript零基础入门到实战全套教程】 https://www.bilibili.com/video/BV14Z4y1u7pi/?share_sourcecopy_web&vd_sourceb1cb921b73fe3808550eaf2224d1c155 目录 3、TypeScript常用类型 3.1 类型注解 …

基础知识常见算法识别

特征值识别 很多常见的算法,如AES、DES等,在运算过程中会使用一些常量,而为了提高运算效率,这些常量往往被硬编码在程序中 通过识别这些特征值,可以对算法进行一个大致判断 算法特征值(无特殊说明为十六…

双向链表(1)

前面说过在需要不停的找前驱时(删除要找前驱等等),其时间复杂度很大。 这个图就是双向链表,相当于2个(方向相反的)单链表合起来 所以双向链表的结构设计就是比单链表多了一个指针域,以空间换时间…

Linux提权—服务漏洞,以MySQL-UDF提权为例

UDF(user defined function,用户自定义函数) 利用条件: 有对MySQL数据库进行创建,插入,删除的权限 secure_file_priv为空 利用过程 secure_file_priv的值为空或者是我们恰巧需要用到的目录,如下: 提权成…

Flink代码单词统计 ---批处理

flatMap:一对多转换操作,输入句子,输出分词后的每个词groupBy:按Key分组,0代表选择第1列作为Keysum:求和,1代表按照第2列进行累加print:打印最终结果 1.WordCount代码编写 需求&am…

Docker基础(一)

文章目录 1. 基础概念2. 安装docker3. docker常用命令3.1 帮助命令3.2 镜像命令3.3 容器命令3.4 其他命令 4. 使用案例 1. 基础概念 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官…

精酿啤酒:酵母的选择与发酵时间的影响

酵母是啤酒酿造过程中不可或缺的微生物,其选择和发酵时间对啤酒的口感、品质和风格产生着重要影响。Fendi Club啤酒在酵母的选择与发酵时间的控制方面有着与众不同的技巧和经验。 首先,酵母的选择对啤酒的发酵过程和品质重要。Fendi Club啤酒选用品质、高…

kubectl 命令行管理K8S

目录 陈述式资源管理方法 1.基本信息查看 查看版本信息 查看资源对象简写 查看集群信息 配置kubectl自动补全 node节点查看日志 查看 master 节点状态 查看命名空间 查看default命名空间的所有资源 创建命名空间yy 删除命名空间yy 在命名空间kube-public 创建副本…

vue2实现无感刷新token

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 📘 引言: &#x1f4…

力扣用例题:2的幂

此题的解题方法在于根据用例调整代码 bool isPowerOfTwo(int n) {if(n1){return true;}if(n<0){return false;}while(n>2){if(n%21){return false;}nn/2; }if(n1){return false;}return true;}

Kubernetes基础(二十五)-Kubernetes GC原理

1 K8s 的垃圾回收策略 当给k8s一个资源对象设置OwnerReference的时候&#xff0c;删除该资源对象的owner, 该对象也会被连带删除。这个时候用的就是k8s的垃圾回收机制。 k8s目前支持三种回收策略&#xff1a; 1&#xff09;前台级联删除&#xff08;Foreground Cascading De…

129 Linux 系统编程7 ,make 的编写和解析

前文中&#xff0c;我们有多少个.c文件&#xff0c;就需要build 出来多少个.o文件 假设我们的项目很大&#xff0c;怎么管理这些 .c文件呢&#xff1f; 这里就要学习一个make文件的编写了。 makefile 本质上是一个脚本语言 脚本语言实际上就是将一系列命令放在一起执行 mak…