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

带标签的 Docker 镜像打包为 tar 文件

现在还有人用docker吗

要将带标签的 Docker 镜像打包为 tar 文件,请使用 docker save 命令。以下是详细操作指南:

一、单镜像打包(推荐方式)

# 基础格式
docker save -o [输出文件名].tar [镜像名]:[标签]# 示例:将 my-app:1.0 保存为 app-backup.tar
docker save -o app-backup.tar my-app:1.0

二、多镜像打包

# 同时打包多个镜像到单个文件
docker save -o all-images.tar \my-app:1.0 \redis:alpine \nginx:latest

三、压缩打包(节省空间)

# 直接生成gzip压缩包(.tar.gz)
docker save my-app:1.0 | gzip > app-backup.tar.gz# 加载时解压
gunzip -c app-backup.tar.gz | docker load

四、操作验证

# 查看tar文件内容
tar -tvf app-backup.tar | head -n 5# 加载镜像到新环境
docker load -i app-backup.tar# 验证加载结果
docker images | grep my-app

五、使用场景与技巧

  1. 版本归档

    # 结合日期/版本号命名
    docker save -o my-app-$(date +%Y%m%d)-v1.0.tar my-app:1.0
    
  2. CI/CD 流水线

    # 在构建后自动打包
    docker build -t my-app:$CI_COMMIT_SHA .
    docker save -o my-app-$CI_COMMIT_SHA.tar my-app:$CI_COMMIT_SHA
    
  3. 跨平台传输

    # 压缩后传输(约减少70%体积)
    docker save my-app:prod | gzip | ssh user@server "gunzip | docker load"
    
  4. 批量导出所有镜像

    # 导出全部镜像(慎用,可能体积巨大)
    docker save $(docker images -q) -o all-images.tar
    

相关文章:

  • 策略模式与工厂模式的黄金组合:从设计到实战
  • C++并发编程-4.unique_lock,共享锁和递归锁
  • 关于Kotlin与Java的思考
  • 通过ETL从MySQL同步到GaussDB
  • Linux工作常用命令记录
  • Android开发获取视图组件的findViewById,kotlin-android-extensions,ViewBinding三种详解
  • PyWavelets
  • 分布式系统ID生成方案深度解析:雪花算法 vs UUID vs 其他主流方案
  • 航天VR赋能,无人机总测实验舱开启高效新篇​
  • 鸿蒙OS开发IoT控制应用:从入门到实践
  • 基于JavaWeb的校园失物招领系统设计与实现
  • 机器学习2——贝叶斯理论下
  • 概述-2-MySQL安装及启动-1-Dcoker安装MySQL
  • 那些不应该的优化
  • Hall 定理 学习笔记
  • 【Redis】解码Redis中的list类型,基本命令,内部编码方式以及适用的场景
  • Ai大模型 - ocr图像识别形成结构化数据(pp-ocr+nlp结合) 以及训练微调实现方案(初稿)
  • Prompt Engineering For LLMs
  • 【Linux基础知识系列】第三十二篇 - Shell 历史与命令编辑
  • eSearch识屏 · 搜索 v15.0.1 官方版