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

Docker内更新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.

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

    2. 运行命令 java -jar jenkins.war --httpPort=8080.

    3. 打开浏览器进入链接 http://localhost:8080.

    4. 按照说明完成安装.

        三、通过docker-compose部署Jenkins

        我的代码如下:

version: "3"volumes: # 自定义数据卷jenkins_vol: #定义数据卷同步存放jenkins数据networks:jenkins_network:driver: bridgeservices:jenkins:image: jenkins/jenkinsports:- "8080:8080"- "50000:50000"volumes:- ./compose/jenkins/jenkins_home:/jenkins_file- jenkins_vol:/var/jenkins_homenetworks:- jenkins_networkrestart: 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更新成功了!!! 

相关文章:

  • 如何使用Arduino IDE对STM32F103C8T6进行编程
  • 比较好玩的车子 高尔夫6
  • TCP-IP详解卷一:协议——阅读总结
  • UML学习
  • ORAN C平面 Section Extension 22
  • Flutter之TabBar篇
  • hive管理之ctl方式
  • spring test配合junit4 实现单元测试
  • OpenAI曾转录100万小时视频数据,训练GPT-4
  • Java每日一题(三道同一类型的题)
  • 关于yolov8x-p2.yaml
  • 【算法刷题】八大排序算法总结(冒泡、选择、插入、二分插入、归并、快速、希尔、堆排序)
  • python-pytorch实现CBOW 0.5.000
  • prometheus expected a valid start token, got “\““ (“INVALID“) while parsing:
  • 计算机视觉异常检测——PatchCore面向全召回率的工业异常检测
  • android图片蒙层
  • CEF与代理
  • CSS魔法堂:Absolute Positioning就这个样
  • Django 博客开发教程 8 - 博客文章详情页
  • flask接收请求并推入栈
  • Map集合、散列表、红黑树介绍
  • Redis 懒删除(lazy free)简史
  • win10下安装mysql5.7
  • 测试开发系类之接口自动化测试
  • 从重复到重用
  • 诡异!React stopPropagation失灵
  • 基于webpack 的 vue 多页架构
  • 记录一下第一次使用npm
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 微服务入门【系列视频课程】
  • 我有几个粽子,和一个故事
  • 以太坊客户端Geth命令参数详解
  • 硬币翻转问题,区间操作
  • 智能网联汽车信息安全
  • nb
  • 阿里云重庆大学大数据训练营落地分享
  • #define用法
  • (11)MSP430F5529 定时器B
  • (8)STL算法之替换
  • (补)B+树一些思想
  • (分布式缓存)Redis哨兵
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (附源码)计算机毕业设计ssm电影分享网站
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • (转)真正的中国天气api接口xml,json(求加精) ...
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .NET CORE 第一节 创建基本的 asp.net core
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...
  • .net 简单实现MD5
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET和.COM和.CN域名区别