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:lts
    container_name: jenkins_test
    restart: on-failure
    privileged: true
    user: root
    ports:
      - "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 down

docker compose up -d

4、查询默认管理员密码

复制代码
docker exec -it jenkins_test cat /var/jenkins_home/secrets/initialAdminPassword

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

相关推荐
是小崔啊4 小时前
【Jenkins】01 - Jenkins安装
运维·jenkins
天上掉下来个程小白5 小时前
Docker-14.项目部署-DockerCompose
运维·docker·微服务·容器
星霜笔记9 小时前
Docker 部署 MariaDB+phpMyAdmin+Nextcloud 完整教程
运维·数据库·docker·容器·mariadb
数据知道11 小时前
容器化部署:用Docker封装机器翻译模型与服务详解
docker·容器·机器翻译
cpsvps_net14 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
甄超锋15 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cpsvps17 小时前
美国服务器环境下Windows容器工作负载基于指标的自动扩缩
windows
敲上瘾18 小时前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
伊成20 小时前
Docker 部署 Nginx 完整指南
nginx·docker·容器
网硕互联的小客服20 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php