批量给docker镜像打tag并推送到harbor——筑梦之路

环境说明:

docker需要登录harbor

需要提前处理好镜像清单,清单里面不能含有不需要处理的镜像

处理脚本如下:

#!/bin/bash
#镜像处理脚本
#功能说明:
#1.从镜像清单里面获取镜像列表进行拉取镜像
#2.修改镜像tag,重新给镜像打tag
#3.将新tag的镜像push到harbor

#镜像清单images-trs-hrmty.txt存到数组
IMAGES_ARRAY=($(cat images.txt))
old_tag='zmy-test'
new_tag='zmy-prod'
#计数器
count=1
#循环遍历镜像列表
for image in ${IMAGES_ARRAY[@]};do
  #拉取镜像
  echo "拉取第${count}个镜像: ${image}"
  docker pull ${image}
  #新镜像名
  new_image=${image/${old_tag}/${new_tag}}
  #给镜像打新tag
  echo "打新镜像tag: ${new_image}"
  docker tag ${image} ${new_image}
  #推送新镜像
  echo "推送新镜像: ${new_image}"
  docker push ${new_image} || exit $?
  #清理旧镜像
  docker rmi ${image}
  count=$((count+1))
done

仅作为参考

猜你喜欢

转载自blog.csdn.net/qq_34777982/article/details/126011509