把现有的 Jenkins 容器推送到一个新的镜像标签,并且重新启动新的容器

要把现有的 Jenkins 容器推送到一个新的镜像标签,并且重新启动新的容器,你可以按照以下步骤操作:

  1. 停止当前正在运行的 Jenkins 容器(如果你不想在操作时中断服务,可以跳过此步骤,直接进行下一步):

    bash 复制代码
    docker stop 92f98add7db2
  2. 提交现有的 Jenkins 容器为新的镜像:

    bash 复制代码
    docker commit 92f98add7db2 jenkins:20240513
  3. 启动新的 Jenkins 容器,根据你提供的参数配置:

    bash 复制代码
    docker run -d \
      --name jenkins-new \
      -p 8080:8080 \
      -e TZ="Asia/Shanghai" \
      -v /mnt/jenkins/.jenkins:/root/.jenkins \
      -v /mnt/jenkins/.m2:/root/.m2 \
      -v /mnt/jenkins/.npm:/root/.npm \
      --ulimit nofile=20480:40960 \
      --memory 8g \
      jenkins:20240513

这些命令解释如下:

  • docker stop 用于停止当前运行的容器。
  • docker commit 用于从已有的容器创建一个新的镜像。这里你把标签设为 20240513。
  • docker run 用于启动新的容器,并设置了一些重要的参数:
    • -d 表示后台运行容器。
    • --name 设置容器的名称。
    • -p 映射端口,让外部可以通过主机的 8080 端口访问 Jenkins。
    • -e TZ="Asia/Shanghai" 设置时区为上海。
    • -v 挂载卷,这里挂载了 Jenkins 的配置目录、Maven 的目录和 npm 的目录,以便保持数据持久化。
    • --ulimit nofile=20480:40960 设置文件描述符的软限制和硬限制。
    • --memory 8g 设置容器可使用的最大内存为 8 GB。

这样,你就可以在新的镜像上继续使用 Jenkins 服务,而无需重新配置和安装,同时还可以保持以前的数据和设置。如果需要,你还可以删除旧的容器来释放系统资源:

bash 复制代码
docker rm 92f98add7db2
相关推荐
Decay__11 小时前
VMware 安装 SQL Server 双节点 AlwaysOn 可用性组教程 —— WSFC、AG 与侦听器完整部署(系列核心篇)
运维·数据库·sql·mysql·架构
测试界的小码农12 小时前
【Linux 命令实战(06):Linux 文件权限管理,掌握 chmod、chown、chgrp】
linux·运维·服务器
陈希12313 小时前
负载均衡与高可用:LVS、HAProxy、Keepalived 实战
运维·负载均衡·lvs
SQL7716 小时前
IT运维发展史,一部宏伟史诗
运维·运维发展史
分布式存储与RustFS18 小时前
Terraform 状态文件老在本地丢、并发还撞锁:把 state 锁进 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
csdn_aspnet18 小时前
macOS 10 、Docker 玩轉 MySQL
运维·mysql·macos·docker·容器·mac
爱和冰阔落20 小时前
【Linux网络】TCP 半包粘包怎么解决?从长度报头、JSON 拆包到网络计算器完整实战
linux·运维·网络·tcp/ip
无奈笑天下1 天前
银河麒麟上nproc命令教程详解
linux·运维·服务器
威嵌神州1 天前
嵌入式排故实录:高并发下串口数据“超时丢包”的根因剖析与架构优化
运维·服务器·嵌入式硬件·缓存
Decay__1 天前
SQLServer 索引与 SQL 优化 —— 聚集索引、非聚集索引、覆盖索引、碎片维护与执行计划
运维·数据库·sql·mysql·架构