[docker]-docker导出所有镜像

导语:需要迁移docker目录,以防万一备份一下镜像。

方法1:

 docker images  |awk '{print $1":"$2}'
 # 效果等同于
 docker images --format '{{.Repository}}:{{.Tag}}'

逐个导出

for i in `docker images --format '{{.Repository}}:{{.Tag}}'` ;do docker save $i > /mnt/images/`echo $i |sed 's/:/-/g'|sed 's/\//-/g'`.tar.gz ;done

方法2:

#!/bin/sh
sum=` docker image list |wc -l`
COUNT=`expr $sum - 1`
echo 镜像数量:$COUNT
TAG=`docker image list|grep -v REPOSITORY|awk '{print $1":" $2}'|awk 'ORS=NR%"'$COUNT'"?" ":"\n"{print}'`
echo TAG值:$TAG
docker save $TAG -o test.tar

#!/bin/bash
docker save $(docker images --format '{{.Repository}}:{{.Tag}}') -o allinone.tar