Docker容器镜像打成tar包

前言
本文记录docker保存镜像、打包tar、加载tar镜像。

简述需求:

在现在容器镜像上保存镜像进行打包,在另一台服务上使用;或现有的容器安装了一些库,配置了开发环境,需要保存下载,下次加载后直接使用

一、docker保存镜像

1、首先查看下现有要打tar包的容器(目的是查询需要保存镜像的ID)

 docker ps -a

img

1.2 接下来用commit参数进行保存镜像(精简版)

docker commit [镜像的ID] [镜像名:版本] 
docker commit 7ca736d99653 yolov5:v6.2
#其中,7ca736d99653 是需要保存镜像的ID,刚才用docker ps -a 查询到的。yolov5:v6.2 是需要保存镜像的REPOSITORY、和TAG,这两个自由设定的。(yolov5 对#应REPOSITORY、v6.2对应TAG;两者用:分割开。)
docker commit -a "tmf" -m "tmf-web" 7740db56288a    tmf-web:v20191123
#-a 提交人的姓名  -m “提交内容”,格式如:docker  commit  -a  -m  现有容器ID   保存后的名称:版本号
(详细版)或者用commit参数进行保存镜像, -a 提交人的姓名  -m “提交内容”,
格式如:docker  commit  -a  -m  现有容器ID     保存后的名称:版本号
docker commit -a "xiaoming" -m "Update target detection model" 7ca736d99653    yolov5:v6.21.3 查看镜像是否保存成功

接下来查看下镜像是否出现:能看到刚才保存的镜像yolov5:v6.2出现了,说明成功了。

docker images

img

二、打包tar

使用save参数进行打包,格式如:docker save -o 要打镜像包名称 镜像

#格式如:docker save -o tar文件名称  镜像REPOSITORY:TAG
docker save -o yolov5-v6.2.tar yolov5:v6.2  
#其中yolov5:v6.2 是需要保存镜像的REPOSITORY、和TAG;也是上面保存的镜像名称。
docker save -o F:/study/ndricrane-latest.tar 192.168.1.153:5000/ndricrane:latest
docker save -o tmf-web20191123.tar tmf-web:v20191123

img

然后把打好的包传到另外一台服务器上进行部署或者升级操作

三、加载tar镜像
使用load从tar文件进行导出镜像操作

load:导入使用 docker save 命令导出的镜像。

docker load -i yolov5-v6.2.tar
docker load -i tmf-web20191123.tar

然后查看是否出现镜像

docker  images

img

然后把刚导入的镜像进行打标签,目的就是把刚刚导入的镜像归到某个镜像仓库里(所谓的仓库即:docker.oa.com:8080/tmf/ 然后再加上你要使用的镜像名称:版本号)

docker tag  tmf-web:v20191123     docker.oa.com:8080/tmf/tmf_web:v20191123

然后把镜像push推送到仓库

docker push  docker.oa.com:8080/tmf/tmf_web:v20191123

进行查看

img

参考文档:

https://www.cnblogs.com/Dfengshuo/p/12067190.html

https://blog.csdn.net/qq_41204464/article/details/122034637

posted on 2024-02-19 13:44  青春似雨后霓虹  阅读(273)  评论(0编辑  收藏  举报