Hugging Face Spaces 部署檢查清單
部署前檢查
必要檔案
-
Dockerfile- Docker 建置配置 -
README.md- Space 配置檔(包含 YAML front matter) -
.dockerignore- 排除不需要的檔案 -
.env.example- 環境變數範例 -
DEPLOYMENT.md- 部署指南
專案檔案
-
package.json- 根目錄 workspace 配置 -
pnpm-lock.yaml- 依賴鎖定檔 -
pnpm-workspace.yaml- Workspace 配置 -
tsconfig.base.json- TypeScript 基礎配置 -
tsconfig.json- TypeScript 配置
後端檔案
-
artifacts/api-server/- 完整後端程式碼 -
artifacts/api-server/src/index.ts- 已移除背景 token refresh -
artifacts/api-server/src/lib/localTempStorage.ts- 本地暫存邏輯
前端檔案
-
artifacts/image-gen/- 完整前端程式碼 -
artifacts/image-gen/dist/- 建置後會自動生成
資料庫檔案
-
lib/db/- 資料庫層 -
lib/db/package.json- 已更新為 better-sqlite3 -
lib/db/drizzle.config.ts- 已改為 SQLite 配置 -
lib/db/src/index.ts- 已改為 SQLite 連接
共享庫
-
lib/api-client-react/- React API 客戶端 -
lib/api-spec/- OpenAPI 規格 -
lib/api-zod/- Zod 驗證
環境變數設定
必要變數(在 Space Settings 中設定)
-
JWT_SECRET- JWT 密鑰(至少 32 字元隨機字串) -
ENCRYPTION_KEY- 加密密鑰(必須是 32 字元)
可選變數
-
DATABASE_URL- 資料庫路徑(預設:file:/data/sqlite.db) -
TEMP_STORAGE_PATH- 暫存路徑(預設:/app/temp-storage) -
TURNSTILE_SOLVER_URL- Turnstile 服務 URL(如有)
Space 設定
基本設定
- Space SDK 選擇 "Docker"
- Space hardware 選擇 "CPU basic"(免費)
- License 設定為 "MIT"
Persistent Storage
- 啟用 Persistent Storage
- 掛載路徑設定為
/data - 確認容量足夠(免費版有限制)
建置檢查
Docker 建置
- Dockerfile 語法正確
- 所有依賴都能正確安裝
- 前端建置成功
- 後端建置成功
- 暴露端口 7860
執行時檢查
- 伺服器能正常啟動
- 資料庫檔案能正確建立
- 暫存目錄能正確建立
- 日誌輸出正常
功能測試
基本功能
- 首頁能正常載入
- 用戶註冊功能正常
- 用戶登入功能正常
- 第一個用戶成為管理員
管理功能
- 能進入管理後台
- 能設定 geminigen.ai 憑證
- 能查看系統狀態
- 能管理用戶
圖像生成
- 能輸入提示詞
- 能選擇模型
- 能選擇風格和比例
- 能上傳參考圖像
- 能成功生成圖像
- 圖像能正常顯示
影片生成
- 能輸入提示詞
- 能選擇模型(Grok-3 / Veo 3.1)
- 能設定進階選項
- 能上傳參考圖像
- 能成功生成影片
- 進度追蹤正常
- 影片能正常播放
歷史記錄
- 圖像歷史能正常顯示
- 影片歷史能正常顯示
- 能刪除記錄
- 私密/公開過濾正常
效能檢查
資源使用
- CPU 使用率合理
- 記憶體使用率合理
- 磁碟空間足夠
回應時間
- 頁面載入速度可接受
- API 回應時間合理
- 圖像生成時間正常
- 影片生成時間正常
維護檢查
自動清理
- 舊檔案能自動清理(24 小時)
- 清理日誌正常輸出
- 磁碟空間不會持續增長
日誌監控
- 能在 Space Logs 查看日誌
- 錯誤日誌清晰可讀
- 無異常錯誤持續出現
備份
- 知道如何備份資料庫
- 知道如何還原資料庫
- 定期備份計畫已建立
安全檢查
憑證安全
- JWT_SECRET 是隨機生成的
- ENCRYPTION_KEY 是隨機生成的
- 不在程式碼中硬編碼敏感資訊
- .env 檔案已加入 .gitignore
存取控制
- 管理功能需要管理員權限
- 私密內容只有擁有者能查看
- API 端點有適當的認證
文件檢查
使用者文件
- README.md 說明清楚
- DEPLOYMENT.md 步驟完整
- .env.example 註解清楚
開發文件
- 程式碼註解充足
- 關鍵邏輯有說明
- 已知限制有記錄
部署後驗證
立即檢查
- Space 狀態為 "Running"
- 能訪問 Space URL
- 首頁正常顯示
- 無 JavaScript 錯誤
24 小時後檢查
- Space 仍在運行
- 資料庫資料保存正常
- 舊檔案已自動清理
- 無記憶體洩漏
一週後檢查
- 長期穩定性良好
- 磁碟空間使用穩定
- 無異常錯誤累積
- 用戶回饋正面
問題排查
常見問題
- 知道如何查看日誌
- 知道如何重啟 Space
- 知道如何還原資料
- 知道如何聯繫支援
緊急處理
- 有備份還原計畫
- 有降級方案
- 有聯繫管道
完成確認
- 所有檢查項目都已完成
- 所有功能都正常運作
- 文件都已更新
- 團隊成員都已知悉
部署日期: _______________
部署人員: _______________
Space URL: _______________
備註: