#!/bin/bash # 检查到未定义的变量则停止执行并报错 set -u # 检查参数数量 if [ "$#" -ne 3 ]; then echo "Error: Incorrect number of arguments" echo "Usage: $0 FILE_PATH IMAGE_NAME TAG_NAME" exit 1 fi FILE_PATH=$1 IMAGE_NAME=$2 TAG_NAME=$3 # 检查镜像是否存在 if [[ "$(docker images -q $IMAGE_NAME:$TAG_NAME 2> /dev/null)" != "" ]]; then echo "Image already exists, start removing..." # 镜像存在,删除镜像 docker rmi "$IMAGE_NAME":"$TAG_NAME" echo "Image removed" fi # 导入镜像 echo "Start image import..." docker import "$FILE_PATH" "$IMAGE_NAME":"$TAG_NAME" if [[ "$(docker images -q $IMAGE_NAME:$TAG_NAME 2> /dev/null)" != "" ]]; then echo "Image imported" fi