Windows Docker 部署 Jenkins

news2024/11/15 15:52:38

一、简介

今天介绍一下在 Windows Docker 中部署 Jenkins 软件。在 Windows Docker 中,分为两种情况 Linux 容器和 Windows 容器。Linux 容器是通常大多数使用的方式,Windows 容器用于 CI/CD 依赖 Windows 环境的情况。

二、Linux 容器

Linux 容器内部署的 Jenkins 服务,大多数构建 CI/CD 使用这种场景,这里就不做过多介绍了。

2.1 部署 Jenkins

打开 Docker Desktop,切换到 Linux 容器,然后在 PowerShell 执行下面命令,即可部署一个 Jenkins 服务。这里安装的是 2.447 Tag 版本,如果需要安装其他或者最新版本,可以到 Docker Hub 中进行查找。

docker run -d -p 8080:8080 --restart always --name jenkins-2.447 -e LANG=C.UTF-8 -v C:\ProgramDatas\Docker\Containers\jenkins-2.447:/var/jenkins_home jenkins/jenkins:2.447

-参数 --restart always 在容器退出时总是重启容器。
-参数 -v C:\ProgramDatas\Docker\Containers\jenkins-2.447:/var/jenkins_home 将容器内的 /var/jenkins_home 映射到物理机的 C:\ProgramDatas\Docker\Containers\jenkins-2.447 文件夹。

在这里插入图片描述

2.2 Jenkins 目录映射

Docker 内的 Jenkins 容器,需要映射到物理机进行数据持久化,如下可以看到 Jenkins 容器内的 /var/jenkins_home 成功映射到了物理机的 C:\ProgramDatas\Docker\Containers\jenkins-2.447 目录。
在这里插入图片描述

2.3 初始化 Jenkins

浏览器内使用 8080 端口 http://localhost:8080/ 进行访问,第一次访问需要初始化会比较慢,需要两三分钟吧。看到如下 Unlock Jenkins 界面,需要输入容器内 /var/jenkins_home /secrets/initialAdminPassword 文件中的密码。因为进行了目录映射,所以找物理上的 C:\ProgramDatas\Docker\Containers\jenkins-2.447\secrets\initialAdminPassword 文件内容输入即可。
在这里插入图片描述
在这里插入图片描述
插件安装,通常选择推荐即可,自定义也可以,按需选择。
在这里插入图片描述
在这里插入图片描述
等待插件安装完成后,输入设置 admin 用户信息,根据自己的需求命名即可。
在这里插入图片描述
在这里插入图片描述
初始化到这一步,我们的 Jenkins 就安装完成了。
在这里插入图片描述

三、Windows 容器

Windows 容器内部署的 Jenkins,通常用作 CI/CD 依赖于Windows 环境的场景。比如 Microsoft 的 DotNet Framework 平台开发的程序,在使用 Jenkins 构建 CI/CD 时,依赖于 Windows 环境。

3.1 部署 Jenkins

打开 Docker Desktop 切换到 Windows 容器,然后在 PowerShell 执行下面命令,即可部署一个 Jenkins 服务。这里安装的是 windowsservercore-ltsc2019 Tag 版本,如果需要安装其他或者最新版本,可以到 Docker Hub 中进行查找。

docker run -d -p 8080:8080 --restart always --name jenkins_windowsservercore-ltsc2019 -e LANG=C.UTF-8 -v C:\ProgramDatas\Docker\Containers\jenkins_windowsservercore-ltsc2019:C:\ProgramData\Jenkins\JenkinsHome jenkins/jenkins:windowsservercore-ltsc2019

-因为 Windows 容器的镜像,通常情况下,基础镜都像比较大,所以第一次下载部署需要点时间,取决于网络速度。
参数 --restart always 在容器退出时总是重启容器。
-参数 -v C:\ProgramDatas\Docker\Containers\jenkins_windowsservercore-ltsc2019:C:\ProgramData\Jenkins\JenkinsHome 将容器内的 C:\ProgramData\Jenkins\JenkinsHome 映射到物理机的 C:\ProgramDatas\Docker\Containers\jenkins_windowsservercore-ltsc2019 文件夹。

在这里插入图片描述
如果需要进入容器内,可以执行下面两个命令,一个是进入 cmd,另一个是进入 powershell。

docker container exec -it jenkins_windowsservercore-ltsc2019 cmd
docker container exec -it jenkins_windowsservercore-ltsc2019 powershell

3.2 Jenkins 目录映射

Docker 内的 Jenkins 容器,需要映射到物理机进行数据持久化,如下可以看到容器内的 C:\ProgramData\Jenkins\JenkinsHome 成功映射到了物理机的 C:\ProgramDatas\Docker\Containers\jenkins_windowsservercore-ltsc2019 目录。
在这里插入图片描述

3.3 初始化 Jenkins

浏览器内使用 8080 端口 http://localhost:8080/ 进行访问,第一次访问初始化会比较慢,需要两三分钟吧。看到如下界面,解锁 Jenkins 需要输入容器内xxx\secrets\initialAdminPassword 文件中的密码。因为进行了目录映射,所以找物理上的 C:\ProgramDatas\Docker\Containers\jenkins_windowsservercore-ltsc2019\secrets\initialAdminPassword 文件内容输入即可。
在这里插入图片描述
在这里插入图片描述
插件安装,通常选择推荐即可,自定义也可以,按需选择。
在这里插入图片描述
在这里插入图片描述
等待插件安装完成后,输入设置 admin 用户信息,根据自己需求命名即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
初始化到这一步,我们的 Jenkins 就安装完成了。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue中使用echarts实现人体动态图

最近一直处于开发大屏的项目,在开发中遇到了一个小知识点,在大屏中如何实现人体动态图。然后看了下echarts官方文档,根据文档中的示例调整出来自己想要的效果。 根据文档上发现 series 中 type 类型设置为 象形柱形图,象形柱图是…

[HackMyVM]靶场 Quick3

kali:192.168.56.104 主机发现 arp-scan -l # arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.56.1 0a:00:27:00:00:05 (U…

解密Lawnchair:打造个性化极致的Android桌面体验

解密Lawnchair:打造个性化极致的Android桌面体验 1. 简介 Lawnchair是一款知名的Android桌面定制工具,旨在为用户提供个性化极致的桌面体验。作为一个开源项目,Lawnchair融合了简洁、灵活和强大的特点,让用户能够自由定制其Andro…

b站小土堆pytorch学习记录—— P17 土堆说卷积操作

文章目录 一、前置知识什么是卷积操作 二、代码 一、前置知识 什么是卷积操作 推荐几个高赞博客: 卷积最容易理解的解释 卷积神经网络(CNN)详细介绍及其原理详解 还有pytorch官网的动态图: pytorch卷积 二、代码 import t…

免费的ChatGPT网站( 7个 )

ChatGPT 是由 OpenAI 公司研发的一款大型语言模型,它可以实现智能聊天、文本生成、语言翻译等多种功能。以下是 ChatGPT 的详细介绍: 智能聊天:ChatGPT 可以与用户进行自然语言对话,回答用户的问题,提供相关的信息和建…

通义千问1.5(Qwen1.5)大语言模型在PAI-QuickStart的微调与部署实践

作者:汪诚愚(熊兮)、高一鸿(子洪)、黄俊(临在) Qwen1.5(通义千问1.5)是阿里云最近推出的开源大型语言模型系列。作为“通义千问”1.0系列的进阶版,该模型推出…

S4---FPGA-K7板级原理图硬件实战

视频链接 FPGA-K7板级系统硬件实战01_哔哩哔哩_bilibili FPGA-K7板级原理图硬件实战 基于XC7K325TFFG900的FPGA硬件实战框图 基于XILINX 的KINTEX-7 芯片XC7K325FPGA的硬件平台,FPGA 开发板挂载了4 片512MB 的高速DDR3 SDRAM 芯片,另外板上带有一个SODIM…

Python爬虫实战(基础篇)—13获取《人民网》【最新】【国内】【国际】写入Word(附完整代码)

文章目录 专栏导读背景测试代码分析请求网址请求参数代码测试数据分析利用lxml+xpath进一步分析将获取链接再获取文章内容测试代码写入word完整代码总结专栏导读 🔥🔥本文已收录于《Python基础篇爬虫》 🉑🉑本专栏专门针对于有爬虫基础准备的一套基础教学,轻松掌握Py…

深度学习-Pytorch实现经典VGGNet网络

深度学习-Pytorch实现经典VGGNet网络 深度学习中,经典网络引领一波又一波的技术革命,从LetNet到当前最火的GPT所用的Transformer,它们把AI技术不断推向高潮。2012年AlexNet大放异彩,它把深度学习技术引领第一个高峰,打…

数据可视化原理-腾讯-3D网格热力图

在做数据分析类的产品功能设计时,经常用到可视化方式,挖掘数据价值,表达数据的内在规律与特征展示给客户。 可是作为一个产品经理,(1)如果不能够掌握各类可视化图形的含义,就不知道哪类数据该用…

【Leetcode每日一刷】动态规划算法: 62. 不同路径、63. 不同路径 II

博主简介:努力学习和进步中的的22级计科生博主主页: Yaoyao2024每日一句: “ 路虽远,行则将至。事虽难,做则可成。” 前言 前言:动规五部曲 以下是《代码随想录》作者总结的动规五部曲 确定dp数组(dp tab…

IDEA运行大项目启动卡顿问题

我打开了很多项目,然后又启动了一个大型项目时,启动到一半,弹出一个窗口,告诉我idea内存不够,怎么解决这个问题? 1、先把多余的项目关掉,再启动这个大项目, 2、如果还是不行就去修改…

u-boot 基础学习:板级配置 Kconfig 的包含

前言 u-boot 与 Linux 内核在嵌入式Linux开发中占有重要的地位,掌握 u-boot 的基础开发,可以大大提升开发能力,并提高开发的效率。 u-boot 下 如何配置 板级的Kconfig 呢?u-boot 下板级的 Kconfig 是怎么包含到 主目录下 Kconfig…

阿里云2核4G服务器支持多少人在线?多少钱?

阿里云2核4G服务器多少钱一年?2核4G5M带宽优惠价格199元一年,轻量应用服务器2核4G4M带宽165元一年,2核4G服务器30元3个月,可以在阿里云官方活动查看2核4G配置详细报价 https://t.aliyun.com/U/bLynLC 阿里云2核4G服务器价格 2核4G…

Apache SeaTunnel 2.3.4 版本发布:功能升级,性能提升

​Apache SeaTunnel团队自豪地宣布2.3.4版本正式发布!本次更新聚焦于增强核心功能,改善用户体验,并进一步优化文档质量。 此次版本发布带来了多项重要更新和功能增强,包括核心与API的修复、文档的全面优化、Catalog支持的引入&…

一文了解什么是园区网以及如何部署园区网

目录 一、局域网分类 二、园区网的业务部署内容 1、构建高可靠可冗余网络 2、组播业务的快速开展 3、语音业务的部署 4、网络安全的部署 5、网络管理和维护的应用 一、局域网分类 (1)园区网: 目的:让各种服务器提供服务 …

JavaEE之多线程

一.认识线程 1.多进程实现并发编程的不足之处: 引入多个进程的核心:实现并发编程(c的CGI技术就是通过多进程的方式实现的网站后端开发)。因为现在是一个多核cpu的时代,并发编程就是刚需。多进程实现并发编程&#xf…

第 2 个 Java Web 应用工程(JSP JavaBean DB)(含源码)(图文版)

JavaBean 是一种符合特定约定的 Java 类,通常用于在 Java 应用程序中封装数据以及提供对数据的访问和修改方法。 本文示例:建立一个 Tomcat 工程,编写一个 JSP 页面,调用 JavaBean 访问数据库并显示到页面上,发布到 T…

Linux 之一:Linux 简介、客户端、安装

Linux简介 Linux 内核最初只是由芬兰人林纳斯托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。 Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯本纳第克特托瓦兹于…

GitLab EE 企业版破解

在当今数字化时代,软件开发与团队协作已经成为现代企业不可或缺的一部分。而在这个过程中,版本控制、协作和持续集成等工具的运用变得至关重要。GitLab作为一个领先的、完整的DevOps平台,为团队提供了一个集成的解决方案,使得软件…