当前位置: 首页 > news >正文

DockerCompose中部署Jenkins(Docker Desktop在windows上数据卷映射)

场景

Docker+Jenkins+Gitee+Maven项目配置jdk、maven、gitee等拉取代码并自动构建以及遇到的那些坑:

Docker+Jenkins+Gitee+Maven项目配置jdk、maven、gitee等拉取代码并自动构建以及遇到的那些坑_jenkins的安装以及集成jdk+git+maven 提示警告-CSDN博客

Windows10(家庭版)中DockerDesktop(docker)的配置、安装、修改镜像源、使用:

Windows10(家庭版)中DockerDesktop(docker)的配置、安装、修改镜像源、使用_dockerdesktop中文设置-CSDN博客

下面在Windows电脑上安装的Docker Desktop并且使用Docker Compose的方式来部署Jenkins。

当然在Linux上流程一样,不过需要修改数据卷映射中的路径。

注:

博客:
霸道流氓气质-CSDN博客

实现

1、在某磁盘路径下新建jenkins_home文件夹和tool文件夹以及docker-compose.yaml

jenkins_home用来后续映射jenkins的工作目录,tool为了方便后续通过tar包文件方式进行安装配置jdk和maven等工具时使用。

可以进入容器查看

docker exec -it jenkins_test /bin/bash

修改docker-compose.yaml的内容为

version: "3.6"services:jenkins:image: jenkins/jenkins:ltscontainer_name: jenkins_testrestart: on-failureprivileged: trueuser: rootports:- "38080:8080"volumes:- ./jenkins_home:/var/jenkins_home- ./tool:/tool

这里的镜像使用的是jenkins/jenkins:lts

可以搜索镜像

docker search jenkins

容器名称为jenkins_test

端口映射将容器内的8080映射到主机的38080

注意这里jenkins在Window(Docker Desktop)上的数据卷映射,这里使用的是相对路径的方式

如果直接使用Docker命令启动的方式,在windows上使用docker desktop做数据卷映射时可以直接使用绝对路径,比如

docker run -d --name jenkins1 -p 28088:8080 -v D:\SoftWare\jenkinshome:/var/jenkins_home -u 0 jenkins/jenkins:lts

2、在此路径下打开cmd,启动

docker compose up -d

这里之前启动过所以没有执行拉取镜像等操作,启动之后访问本地的38080端口

启动成功且jenkins_home映射成功。

3、如何修改jenkis的下载地址为国内镜像源

找到映射的jenkins_home下的hudson.model.UpdateCenter.xm

然后编辑将默认的url改为如下

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

这里是清华源,也可改为其他源。

修改之后,down掉重启

docker compose downdocker compose up -d

4、查询默认管理员密码

docker exec -it jenkins_test cat /var/jenkins_home/secrets/initialAdminPassword

将密码复制然后后续操作就是安装插件和配置以及使用jenkins了。

http://www.lryc.cn/news/369077.html

相关文章:

  • 吊车报警的工作原理和使用场景_鼎跃安全
  • Spring5
  • vue面试题二
  • 软件设计师笔记-程序语言基础知识
  • 在Windows上安装VMWare Pro 16.2(虚拟机)并从零安装CentOS 7.6镜像过程记录
  • NGINX之location和rewrite
  • Python数据框的合并(一) -- merge函数
  • 【Qt秘籍】[010]-Qt常用控件
  • TypeScript基础教程学习
  • JavaSE面试
  • 安全漏洞扫描工具
  • 前端开发部署:Visual Studio Code + vue
  • 基于Sentry+OpenTelemetry实现微服务前后端全链路监控
  • jquery.datetimepicker无法添加清除按钮的问题
  • Qt中解决编译中文乱码和编译失败的问题
  • Android状态栏适配问题
  • 如何为色盲适配图形用户界面
  • 【爬虫实战项目一】Python爬取豆瓣电影榜单数据
  • AI-知识库搭建(一)腾讯云向量数据库使用
  • AI数据分析:根据Excel表格数据绘制柱形图
  • 基于协调过滤算法商品推荐系统的设计
  • CS1061 “HtmlHelper”未包含“Partial”的定义,并且找不到可接受第一个“HtmlHelper”类型参数的可访问扩展方法“Partial”
  • 大数据运维学习笔记之flink standalone flink on yarn集群搭建 —— 筑梦之路
  • 在知识的海洋中航行:问题的演变与智慧的追求
  • splice()、slice()、split()三种方法的区别
  • iOS 之homebrew ruby cocoapods 安装
  • 【栈】2751. 机器人碰撞
  • 贪心算法06(leetcode738,968)
  • cve_2022_0543-redis沙盒漏洞复现 vulfocus
  • 浅解Reids持久化