Ctr 批量导出导入脚本

批量ctr 导出镜像的_脚本

#!/bin/bash
IMG_NAME=`ctr -n k8s.io i ls |grep -v REF|awk '{print $1}'|grep -v sha256|grep easzlab|grep -v 5000`
echo $IMG_NAME | awk '{gsub(/ /,"\n",$0)} {print $0}'
​
DIR="./ctr_image_tar"
if [ ! -d "$DIR" ]; then
  echo -e "\033[34m${DIR}\033[0m 不存在"
  mkdir -p "$DIR"
  echo -e "\033[34m${DIR}\033[0m 已创建"
else
  echo -e "\033[34m${DIR}\033[0m 已存在"
fi
echo ""
for IMAGE in $IMG_NAME
do
  echo -e "正在保存 \033[33m${IMAGE}\033[0m"
  SAVE_NAME=`echo $IMAGE | awk -F: '{print $1"_"$2}' | sed 's/\//_/g'`
  ctr -n k8s.io i export --all-platforms  ${DIR}/${SAVE_NAME}.tar $IMAGE
  echo "SAVE_NAME: $SAVE_NAME"
  echo -e "已保存到 \033[34m${DIR}/\033[31m${SAVE_NAME}.tar\033[0m"
  echo ""
done

批量ctr导入镜像的_脚本

#!/bin/bash  
​
# 指定包含镜像文件路径的文本文件  
file_list="/home/weijishu/file_list.txt"  
 
 
# 遍历文件列表中的每个文件  
while IFS= read -r file; do  
    # 检查文件是否存在且为.tar文件  
    if [[ -f "$file" && "${file##*.}" == "tar" ]]; then  
        # 加载镜像文件  
        docker load -i "$file"  
 
 
        # 打印导入成功的消息  
        echo "Successfully imported image: $(basename -- "$file" .tar)"  
    fi  
done < "$file_list"
​
#!/bin/bash
for i in `ls`
do ctr -n k8s.io i import $i
done

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值