Files
litellm/build-and-push.sh
zhanggangyong d25f43e25b feat: 添加 XMind 模型供应商支持
- 添加 XMind OpenAI 兼容模型(11个模型)
- 添加 XMind Anthropic 兼容模型(5个模型)
- 添加 XMind Vertex AI 兼容模型(3个模型,使用 OpenAI 格式)
- 更新 deploy.sh 支持 XMind API 密钥环境变量
- 添加 build-and-push.sh 脚本用于构建和推送 Docker 镜像
- 更新 README.md 文档说明
2026-01-13 08:49:39 +00:00

65 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
# 快速构建并推送镜像到 Azure Container Registry
# 使用方法: ./build-and-push.sh [tag]
set -e
# 加载环境变量
if [ -f .env ]; then
export $(cat .env | grep -v '^#' | xargs)
fi
# 配置
ACR_SERVER="${ACR_SERVER:-agnettaiji.azurecr.io}"
ACR_USERNAME="${ACR_USERNAME:-agnettaiji}"
IMAGE_NAME="${IMAGE_NAME:-litellm}"
# 如果没有提供标签,使用时间戳格式: vYYYYMMDDHHMMSS
if [ -z "$1" ]; then
IMAGE_TAG="v$(date +%Y%m%d%H%M%S)"
else
IMAGE_TAG="$1"
fi
FULL_IMAGE_NAME="${ACR_SERVER}/${IMAGE_NAME}:${IMAGE_TAG}"
echo "=========================================="
echo "构建并推送 Docker 镜像到 ACR"
echo "=========================================="
echo "镜像名称: ${FULL_IMAGE_NAME}"
echo ""
# 检查 ACR 密码
if [ -z "$ACR_PASSWORD" ]; then
echo "错误: 未设置 ACR_PASSWORD 环境变量"
echo "请设置 ACR_PASSWORD 或创建 .env 文件"
exit 1
fi
# 构建镜像(同时打 latest 标签,方便快速引用)
echo "步骤 1/2: 构建 Docker 镜像..."
docker build -t "${FULL_IMAGE_NAME}" -t "${ACR_SERVER}/${IMAGE_NAME}:latest" .
# 登录 ACR
echo ""
echo "步骤 2/2: 推送镜像到 ACR..."
echo "${ACR_PASSWORD}" | docker login "${ACR_SERVER}" -u "${ACR_USERNAME}" --password-stdin
# 推送镜像(推送带版本号的标签和 latest 标签)
docker push "${FULL_IMAGE_NAME}"
docker push "${ACR_SERVER}/${IMAGE_NAME}:latest"
echo ""
echo "=========================================="
echo "完成!镜像已推送到: ${FULL_IMAGE_NAME}"
echo "同时更新了 latest 标签: ${ACR_SERVER}/${IMAGE_NAME}:latest"
echo "=========================================="
echo ""
echo "镜像标签: ${IMAGE_TAG}"
echo ""
echo "下一步: 运行以下命令部署应用:"
echo " ./deploy.sh update"
echo ""
echo "或者运行完整部署:"
echo " ./deploy.sh deploy"