#!/bin/bash # 腾讯云 TCR 配置 TCR_SERVER="ccr.ccs.tencentyun.com" TCR_NAMESPACE="sqai" TCR_REPO="taibai" # 修正:使用正确的仓库名 TCR_USERNAME="xiaoyan99817" TCR_PASSWORD="xiaoyan99817" # 要上传的镜像 SOURCE_IMAGE="lishunqin/taibai-shopping:latest" # 提取镜像信息 IMAGE_NAME="shopping" # 简化名称 TAG="latest" echo "🚀 开始上传 $SOURCE_IMAGE 到腾讯云 TCR..." # 使用更安全的登录方式 echo "🔐 登录到腾讯云 TCR..." echo "$TCR_PASSWORD" | docker login $TCR_SERVER -u "$TCR_USERNAME" --password-stdin if [ $? -ne 0 ]; then echo "❌ TCR 登录失败!" echo "🔍 请检查用户名和密码是否正确" exit 1 fi # 检查本地是否有镜像 echo "🔹 检查本地镜像..." if ! docker image inspect $SOURCE_IMAGE >/dev/null 2>&1; then echo "🔹 本地没有镜像,正在拉取: $SOURCE_IMAGE" docker pull $SOURCE_IMAGE if [ $? -ne 0 ]; then echo "❌ 镜像拉取失败!" exit 1 fi else echo "✅ 本地已存在镜像: $SOURCE_IMAGE" fi # 构建TCR镜像标签 - 直接使用 latest 标签 TCR_IMAGE="$TCR_SERVER/$TCR_NAMESPACE/$TCR_REPO:latest" echo "🔹 重新标记镜像: $TCR_IMAGE" docker tag $SOURCE_IMAGE $TCR_IMAGE if [ $? -ne 0 ]; then echo "❌ 镜像标记失败!" exit 1 fi echo "🚀 正在推送镜像到腾讯云 TCR: $TCR_IMAGE" docker push $TCR_IMAGE if [ $? -ne 0 ]; then echo "❌ 镜像推送失败!" exit 1 fi echo "✅ 镜像上传完成: $TCR_IMAGE" echo "🎉 上传成功!最终镜像地址:" echo " ccr.ccs.tencentyun.com/sqai/taibai:latest"