因为docker,所以我把电脑上之前的镜像全部打包出来了
你们也可以打包,我提供一个脚本,你运行即可
export_docker.sh
#!/bin/bash
# 导出目录
EXPORT_DIR="docker_images_backup"
mkdir -p "$EXPORT_DIR"
# 获取所有镜像
images=$(docker images --format "{{.Repository}}:{{.Tag}}")
# 导出每个镜像
for image in $images; do
# 处理未标记的镜像
if [[ "$image" == "<none>:<none>" ]]; then
image_id=$(docker images --format "{{.ID}}:{{.Repository}}:{{.Tag}}" | grep "<none>:<none>" | cut -d':' -f1)
for id in $image_id; do
docker save -o "$EXPORT_DIR/$id.tar" "$id"
done
else
# 将镜像名称和标签转换为文件路径友好格式
image_file=$(echo "$image" | tr "/" "-" | tr ":" "-")
# 保存镜像
docker save -o "$EXPORT_DIR/$image_file.tar" "$image"
echo "$EXPORT_DIR/$image_file.tar 导出成功"
fi
done
# 打包所有镜像为一个文件
tar -cvf docker_images_backup.tar -C "$EXPORT_DIR" .
# 删除临时导出目录
rm -rf "$EXPORT_DIR"
echo "所有镜像导出成功"
记得先给脚本执行权限和创建目录,然后运行
mkdir docker_images_backup && chmod +x export_docker.sh
当然我导出了一部分镜像放在云盘中了
里面有MySQL5.6,8。0,Redis6kafka,kafka、etcd、zk、mongo等镜像
镜像自提:
链接:https://pan.quark.cn/s/84fdfa027d5a
提取码:bdeF
既然有导出所有镜像脚本也有导入所有镜像的脚步
import.sh
#!/bin/bash
# 解压 tar 文件到 docker_images_backup 目录(如果还没有解压)
# tar -xvf /path/to/docker_images_backup.tar -C ./docker_images_backup
# 导入每个镜像
for image_tar in docker_images_backup/*.tar; do
if [ -f "$image_tar" ]; then
docker load -i "$image_tar"
echo "$image_tar 导入成功"
else
echo "未找到任何 .tar 文件在 docker_images_backup 目录中"
fi
done
echo "所有镜像已成功导入"
记得先给脚本执行权限,然后运行