Docker内更新Jenkins详细讲解

很多小伙伴在Docker中使用Jenkins时更新遇到困难,本次结合自己的实际经验,详细讲解。根据官网Jenkins了解以下内容:

一、Jenkins 是什么?

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

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

二、开始使用 Jenkins

本导读将向您介绍使用 Jenkins、Jenkins 的主要特性和 Jenkins Pipeline 的基本知识。 本导读使用"独立"的 Jenkins 发行版,它可以在您自己本地的机器上运行。

2.1 准备工作

第一次使用 Jenkins,您需要:

  • 机器要求:

    内存 硬盘
    256 MB 内存,建议大于 512 MB 10 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

我的代码如下:

python 复制代码
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更新成功了!!!

相关推荐
Suroy5 小时前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭5 小时前
运行你的第一个Docker容器
后端·docker·容器
宋均浩1 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵2 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1112 天前
LM Studio Docker 部署——本地大模型一键启动
docker
曲幽3 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
武子康5 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
Alsn868 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
程序员老赵8 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
杨浦老苏8 天前
轻量级Docker仪表板Servedash
运维·docker·监控·群晖·仪表板