#!/bin/bash set -e REMOTE_SERVER="root@192.168.10.150" REMOTE_DIR="/projects/data/xlcp" ARCHIVE_FILE="xlcp-docker-images.tar.gz" echo "=========================================" echo "上传并加载 Docker 镜像到 192.168.10.150" echo "=========================================" echo "" echo "目标服务器: $REMOTE_SERVER" echo "镜像文件: $ARCHIVE_FILE" echo "文件大小: $(du -h $ARCHIVE_FILE | cut -f1)" echo "" # 创建远程目录 echo "[1/4] 创建远程目录..." ssh "$REMOTE_SERVER" "mkdir -p $REMOTE_DIR" echo "✅ 目录创建完成" echo "" # 上传镜像 echo "[2/4] 上传镜像到远程服务器..." rsync -avz --progress "$ARCHIVE_FILE" "$REMOTE_SERVER:$REMOTE_DIR/" echo "" echo "✅ 上传完成" echo "" # 加载镜像 echo "[3/4] 在远程服务器加载镜像..." ssh "$REMOTE_SERVER" << ENDSSH cd $REMOTE_DIR echo "解压并加载镜像..." docker load -i "$ARCHIVE_FILE" echo "✅ 镜像加载完成" echo "" echo "清理镜像文件..." rm "$ARCHIVE_FILE" echo "✅ 清理完成" ENDSSH echo "" # 显示镜像列表 echo "[4/4] 显示远程服务器镜像列表..." ssh "$REMOTE_SERVER" "docker images | grep -E 'mysql|redis|nginx|maven|eclipse-temurin|node'" echo "" echo "=========================================" echo "镜像上传和加载完成!" echo "=========================================" echo "" echo "下一步操作:" echo " 运行部署脚本: cd .. && ./deploy-to-150.sh" echo ""