# 部署 HuggingRun 到 Hugging Face Spaces ## 1. 创建 Space 在 [huggingface.co/new-space](https://huggingface.co/new-space) 新建 Space: - **SDK**: 选 **Docker** - **Space name**: 例如 `HuggingRun` - 创建后得到 `https://huggingface.co/spaces/<你的用户名>/HuggingRun` ## 2. 推送代码 在本地项目目录执行(把 `tao-shen` 换成你的 HF 用户名): ```bash cd /Users/tao.shen/HuggingRun git remote remove origin 2>/dev/null || true git remote add origin https://huggingface.co/spaces/<你的用户名>/HuggingRun git push -u origin main ``` 若 HF 需要认证,先执行: ```bash pip install -q huggingface_hub && huggingface-cli login ``` 或使用 Git 凭证(HF 支持 Personal Access Token 作为密码)。 ## 3. 本地验证(可选) 确保 Docker 已启动后: ```bash docker build -t huggingrun:local . docker run --rm -p 7860:7860 -e PORT=7860 huggingrun:local ``` 浏览器打开 http://localhost:7860 应看到默认 demo(访问计数)。Ctrl+C 停止。 ## 4. 难例测试(FastAPI + SQLite) 在 Space 的 **Settings → Repository secrets** 中增加: - `RUN_CMD` = `uvicorn app.fastapi_sqlite:app --host 0.0.0.0 --port 7860` - (可选)`HF_TOKEN`、`AUTO_CREATE_DATASET` = `true` 以开启持久化 保存后 Space 会重新构建。打开 App 查看首页和 `/api`,重启 Space 后访问次数应保持(若已配 HF 持久化)。 ## 完成标准 - [ ] Space 创建并推送代码成功 - [ ] 默认 demo 在 Space 中可访问(7860) - [ ] 设置 `RUN_CMD` 后 FastAPI+SQLite 难例可访问且(可选)重启后数据仍在