docker常用命令集(4)

接前一篇文章:docker常用命令集(3)

本文内容参考:

Docker save 命令 | 菜鸟教程

docker save命令详解 - 郭慕荣 - 博客园

Docker保存镜像和导入镜像文件(图文详解)_docker save-CSDN博客

特此致谢!

7. docker save

简介

docker save命令用于将一个或多个Docker镜像打包成归档文件(tar格式),便于迁移、备份或离线分发。不同于docker export(导出容器文件系统),docker save会完整保留镜像的所有层(Layers)、标签(Tags)和元数据。

docker save命令用于将一个或多个Docker镜像保存到一个tar归档文件中,以便在其它环境中分发或备份。

基本语法

docker save [OPTIONS] IMAGE [IMAGE...] > output.tar
或

docker save [OPTIONS] -o output.tar IMAGE [IMAGE...]
docker save -o <输出文件路径> <镜像名称>:<标签>

常用选项

OPTIONS说明:

  • -o, --output:指定输出文件的路径(替代 > 重定向)。
  • > output.tar:使用 Shell 重定向保存为.tar文件(与 -o 二选一)。

IMAGE说明:

要保存的(一个或多个)镜像名称或ID。

用法示例

  • 保存单个镜像到文件
docker save myimage:latest > myimage.tar
或

docker save -o myimage.tar myimage:latest

将myimage:latest镜像保存为myimage.tar文件。

  • 保存多个镜像到同一个文件
docker save -o multiple_images.tar myimage:latest anotherimage:latest

将myimage:latest和anotherimage:latest镜像保存到multiple_images.tar文件中。

docker save ubuntu:20.04 nginx:latest > images.tar

将ubuntu:20.04和ngix:latest打包到同一个images.tar文件。

  • 保存镜像到指定目录
docker save -o /tmp/backup/redis.tar redis:6.2

将redis:6.2保存到/tmp/backup/redis.tar。

意义与用途

  • 归档与备份:docker save命令用于将本地的Docker镜像导出为一个tar文件。这个文件包含了镜像的所有层以及元数据,如标签、配置信息等。通过这种方式,可以对重要的镜像进行归档或备份,防止因为意外删除或系统故障导致的数据丢失。

  • 迁移与分发:当需要将镜像从一台机器迁移到另一台机器时,尤其是在没有直接网络连接的情况下,可以使用docker save将镜像导出为文件,然后通过其它方式(如USB驱动器、FTP传输等)将该文件复制到目标机器上。这在离线环境中特别有用。

  • 版本控制:在某些情况下,可能希望保留特定版本的镜像,以便在未来能够回滚到该版本。通过docker save命令可以创建这些版本的快照,确保任何时候都可以恢复到某个已知的良好状态。

  • 审计与合规性:对于企业级应用,有时需要对使用的镜像进行审计或验证其来源。通过保存镜像文件,可以在必要时检查镜像的内容,确保符合安全策略和法规要求。

更多内容请看下回。

你可能感兴趣的:(容器,docker,容器)