diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 655834c..ad2929d 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -21,48 +21,47 @@ jobs: run: | echo "🔐 检查环境变量注入情况..." - if [ -n "$ZHIPUAI_API_KEY" ]; then - echo "✅ ZHIPUAI_API_KEY 已注入(长度:${#ZHIPUAI_API_KEY})" - else - echo "⚠️ ZHIPUAI_API_KEY 未注入(将使用空值,智谱模型不可用)" - fi + check_secret() { + local name="$1" + local desc="$2" + local value="${!name}" + if [ -n "$value" ]; then + echo "✅ ${name} 已注入(长度:${#value})" + else + echo "⚠️ ${name} 未注入(${desc})" + fi + } - if [ -n "$DEEPSEEK_API_KEY" ]; then - echo "✅ DEEPSEEK_API_KEY 已注入(长度:${#DEEPSEEK_API_KEY})" - else - echo "⚠️ DEEPSEEK_API_KEY 未注入(将使用空值,DeepSeek模型不可用)" - fi - - if [ -n "$LLAMACPP_API_KEY" ]; then - echo "✅ LLAMACPP_API_KEY 已注入(长度:${#LLAMACPP_API_KEY})" - else - echo "⚠️ LLAMACPP_API_KEY 未注入(将使用空值,本地LLM不可用)" - fi + check_secret "ZHIPUAI_API_KEY" "智谱模型不可用" + check_secret "DEEPSEEK_API_KEY" "DeepSeek模型不可用" + check_secret "LLAMACPP_API_KEY" "本地LLM/Embedding不可用" + check_secret "DB_PASSWORD" "PostgreSQL数据库不可用" + check_secret "QDRANT_API_KEY" "Qdrant向量数据库不可用" echo "" - echo "💡 提示:如果看到警告,请在 Gitea 仓库 Settings → Actions → Secrets 中添加对应密钥" + echo "💡 提示:如果看到警告,请在 Gitea 仓库 Settings → Secrets 中添加对应密钥" env: ZHIPUAI_API_KEY: ${{ secrets.ZHIPUAI_API_KEY }} DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }} LLAMACPP_API_KEY: ${{ secrets.LLAMACPP_API_KEY }} + DB_PASSWORD: ${{ secrets.DB_PASSWORD }} + QDRANT_API_KEY: ${{ secrets.QDRANT_API_KEY }} - name: 确保基础镜像已拉取 run: | docker pull python:3.11-slim || true - docker pull postgres:16 || true - name: 构建并启动前后端服务(环境变量注入) env: ZHIPUAI_API_KEY: ${{ secrets.ZHIPUAI_API_KEY }} DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }} LLAMACPP_API_KEY: ${{ secrets.LLAMACPP_API_KEY }} + DB_PASSWORD: ${{ secrets.DB_PASSWORD }} + QDRANT_API_KEY: ${{ secrets.QDRANT_API_KEY }} run: | - # 方式一:直接在命令前设置环境变量(推荐,避免导出遗漏) export DOCKER_BUILDKIT=1 - ZHIPUAI_API_KEY="$ZHIPUAI_API_KEY" \ - DEEPSEEK_API_KEY="$DEEPSEEK_API_KEY" \ - LLAMACPP_API_KEY="$LLAMACPP_API_KEY" \ - docker compose -f docker/docker-compose.yml up -d --build backend frontend + cd docker + docker compose up -d --build backend frontend - name: 健康检查 run: | @@ -78,11 +77,14 @@ jobs: sleep 5 done echo "❌ 后端服务未就绪,查看日志:" - docker compose -f docker/docker-compose.yml logs backend --tail 50 + cd docker + docker compose logs backend --tail 50 exit 1 - name: 清理无用的 Docker 资源 run: docker system prune -f - name: 显示运行状态 - run: docker compose -f docker/docker-compose.yml ps \ No newline at end of file + run: | + cd docker + docker compose ps