#!/bin/bash # HuggingFace Space 部署验证脚本 echo "🔍 验证 HuggingFace Space 部署配置..." # 检查关键文件 echo "📁 检查关键文件..." files_to_check=( "Dockerfile" "docker-start.sh" "nginx/nginx.conf" "nginx/conf.d/default.conf" "nginx/html/index.html" "README.md" ) for file in "${files_to_check[@]}"; do if [ -f "$file" ]; then echo "✅ $file 存在" else echo "❌ $file 缺失" exit 1 fi done # 检查 Dockerfile 配置 echo "🐳 检查 Dockerfile 配置..." if grep -q "EXPOSE 7860" Dockerfile; then echo "✅ 端口 7860 已暴露" else echo "❌ 端口配置错误" exit 1 fi if grep -q "opencode-ai" Dockerfile; then echo "✅ OpenCode 安装配置正确" else echo "❌ OpenCode 安装配置缺失" exit 1 fi # 检查启动脚本 echo "🚀 检查启动脚本..." if grep -q "GATEWAY_PORT.*57860" docker-start.sh; then echo "✅ OpenCode 端口配置正确" else echo "❌ OpenCode 端口配置错误" exit 1 fi if grep -q "opencode serve" docker-start.sh; then echo "✅ OpenCode 启动命令正确" else echo "❌ OpenCode 启动命令缺失" exit 1 fi # 检查 nginx 配置 echo "🌐 检查 nginx 配置..." if grep -q "proxy_pass http://127.0.0.1:57860" nginx/conf.d/default.conf; then echo "✅ nginx 代理配置正确" else echo "❌ nginx 代理配置错误" exit 1 fi if grep -q "auth_basic" nginx/conf.d/default.conf; then echo "✅ nginx 认证配置正确" else echo "❌ nginx 认证配置缺失" exit 1 fi # 检查 README.md echo "📖 检查 README.md..." if grep -q "sdk: docker" README.md; then echo "✅ HuggingFace Space 配置正确" else echo "❌ HuggingFace Space 配置错误" exit 1 fi echo "" echo "🎉 所有配置检查通过!" echo "" echo "📋 部署信息:" echo " • Docker 镜像:基于 openresty/openresty" echo " • 暴露端口:7860" echo " • OpenCode 端口:57860 (内部)" echo " • 认证信息:admin/admin123" echo " • Web 界面:/opencode/" echo " • API 文档:/opencode/doc" echo "" echo "🚀 准备上传到 HuggingFace Space!"