Docker内如何更新Jenkins

 更新时间:2024年11月27日 14:27:31   作者:骑上单车去旅行  
本文详细介绍了如何在Docker中使用Jenkins,包括Jenkins的基本概念、准备工作、下载和运行Jenkins、通过docker-compose部署Jenkins以及更新Jenkins的步骤

很多小伙伴在Docker中使用Jenkins时更新遇到困难,本次结合自己的实际经验,详细讲解。

根据官网Jenkins了解以下内容:

一、Jenkins 是什么?

Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。

Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。

二、开始使用 Jenkins

本导读将向您介绍使用 Jenkins、Jenkins 的主要特性和 Jenkins Pipeline 的基本知识。

本导读使用“独立”的 Jenkins 发行版,它可以在您自己本地的机器上运行。

2.1 准备工作

第一次使用 Jenkins,您需要:

机器要求:

内存硬盘
256 MB 内存,建议大于 512 MB10 GB 的硬盘空间

需要安装的软件:

  • Java 8 ( JRE 或者 JDK 都可以)
  • Docker (导航到网站顶部的Get Docker链接以访问适合您平台的Docker下载)

2.2 下载并运行 Jenkins

1.下载 Jenkins.

2.打开终端进入到下载目录.

3.运行命令

java -jar jenkins.war --httpPort=8080

4.打开浏览器进入链接

http://localhost:8080

5.按照说明完成安装.

三、通过docker-compose部署Jenkins

我的代码如下:

version: "3"
 
volumes: # 自定义数据卷
  jenkins_vol: #定义数据卷同步存放jenkins数据
 
networks:
  jenkins_network:
    driver: bridge
 
services:
  jenkins:
    image: jenkins/jenkins
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      - ./compose/jenkins/jenkins_home:/jenkins_file
      - jenkins_vol:/var/jenkins_home
    networks:
      - jenkins_network
    restart: always

名词解释:

  • volumes——自定义数据卷
  • networks——自定义网络(默认桥接), 不使用links通信
  • services——定义服务
jenkins: # jenkins服务
image: jenkins/jenkins # jenkins镜像
ports: # 端口映射
- "8080:8080" # 映射到宿主机端口
- "50000:50000" # 映射到宿主机端口
volumes: # 数据卷挂载
- ./compose/jenkins/jenkins_home:/jenkins_file # 挂载jenkins数据
- jenkins_vol:/var/jenkins_home # 挂载jenkins数据
networks: # 网络
- jenkins_network # 自定义网络
restart: always # 重启策略

通过命令运行:

sudo docker-compose up -d

执行完毕后,Jenkins创建成功:

在浏览器通过URL访问http://ip:8080进行访问,首次使用根据页面提示进行操作:

可使用cat命令查看密码进行登录:

cat /var/jenkins_home/secrets/initialAdminPassword

得到一串字符,这就是密码,复制到浏览器中点击继续:

这里根据需求安装 ,后续一路默认安装填写即可。

四、更新Jenkins

根据提示,当前有更新版本:

点击Downlaod进入下载jenkins.war文件 ,下载完成后将jenkins.war文件复制到本地与Docker容器挂载的对应目录,根据上面的部署文件可以看出,该项目的本地挂载路径为:

./compose/jenkins/jenkins_home

该路径对应docker容器路径为:

/jenkins_file

进入Docker容器,使用cd命令进入jenkins_file目录,使用cp命令复制.war包到解析目录,jenkins默认.war包路径为/usr/share/jenkins

cp jenkins.war /usr/share/jenkins

最后重启容器就会发现jenkins更新成功了!!!

如果遇到容器内cp权限问题 ,使用docker exec -it -u root 容器id /bin/bash进入即可

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • docker容器的四种端口映射演示分析

    docker容器的四种端口映射演示分析

    这篇文章主要为大家介绍了docker容器的四种端口映射演示分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-04-04
  • Docker挂载/etc/timezone报错问题

    Docker挂载/etc/timezone报错问题

    这篇文章主要介绍了Docker挂载/etc/timezone报错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Docker 安装及配置镜像加速的实现

    Docker 安装及配置镜像加速的实现

    这篇文章主要介绍了Docker 安装及配置镜像加速的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 浅析docker-compose部署mysql无法访问的问题

    浅析docker-compose部署mysql无法访问的问题

    Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器,使用Docker Compose不再需要使用shell脚本来启动容器。接下来通过本文给大家分享docker-compose部署mysql无法访问的问题,需要的朋友参考下吧
    2018-10-10
  • Docker容器导致磁盘空间不足无法访问的解决方法

    Docker容器导致磁盘空间不足无法访问的解决方法

    本文主要介绍了Docker容器导致磁盘空间不足无法访问的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • docker部署SSM项目(含打包)

    docker部署SSM项目(含打包)

    本文主要介绍了docker部署SSM项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-05-05
  • Docker镜像重命名的实现方法

    Docker镜像重命名的实现方法

    本文主要介绍了Docker镜像重命名的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • docker报错Container is not running问题及解决

    docker报错Container is not running问题及解决

    这篇文章主要介绍了docker报错Container is not running问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • docker运行nginx绑定配置文件失败原因以及问题解决

    docker运行nginx绑定配置文件失败原因以及问题解决

    最近工作中在使用docker运行nginx的时候遇到了些问题,下面分享给大家,这篇文章主要给大家介绍了关于docker运行nginx绑定配置文件失败原因以及问题解决的相关资料,需要的朋友可以参考下
    2023-02-02
  • Docker部署Minio的实现方法

    Docker部署Minio的实现方法

    使用Docker搭建MinIO分布式对象存储系统可以让您快速搭建和配置一个高性能、可扩展的存储系统,本文主要介绍了Docker部署Minio的实现方法,感兴趣的可以了解一下
    2024-01-01

最新评论