feat: Hugging Face Spaces Docker deployment
Browse files- Dockerfile +2 -0
- README.md +13 -0
- docs/deploy-huggingface.md +21 -0
- sau_backend.py +3 -1
Dockerfile
CHANGED
|
@@ -58,6 +58,8 @@ RUN cp conf.example.py conf.py
|
|
| 58 |
RUN mkdir -p /app/videoFile
|
| 59 |
RUN mkdir -p /app/cookiesFile
|
| 60 |
|
|
|
|
|
|
|
| 61 |
EXPOSE 5409
|
| 62 |
|
| 63 |
CMD ["python", "sau_backend.py"]
|
|
|
|
| 58 |
RUN mkdir -p /app/videoFile
|
| 59 |
RUN mkdir -p /app/cookiesFile
|
| 60 |
|
| 61 |
+
# Hugging Face Spaces:README 中 app_port 须与此端口一致;也可在 Space 设置里改 app_port 并同步设置环境变量 PORT
|
| 62 |
+
ENV PORT=5409
|
| 63 |
EXPOSE 5409
|
| 64 |
|
| 65 |
CMD ["python", "sau_backend.py"]
|
README.md
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
# social-auto-upload
|
| 2 |
|
| 3 |
`social-auto-upload` 是一个强大的自动化工具,旨在帮助内容创作者和运营者高效地将视频内容一键发布到多个国内外主流社交媒体平台。
|
|
@@ -185,6 +194,10 @@
|
|
| 185 |
```
|
| 186 |
启动容器后访问:[http://localhost:5409](http://localhost:5409)
|
| 187 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 188 |
## 🐇项目背景
|
| 189 |
|
| 190 |
该项目最初是我个人用于自动化管理社交媒体视频发布的工具。我的主要发布策略是提前一天设置定时发布,因此项目中很多定时发布相关的逻辑是基于“第二天”的时间进行计算的。
|
|
|
|
| 1 |
+
---
|
| 2 |
+
title: social-auto-upload
|
| 3 |
+
emoji: 📤
|
| 4 |
+
colorFrom: blue
|
| 5 |
+
colorTo: green
|
| 6 |
+
sdk: docker
|
| 7 |
+
app_port: 5409
|
| 8 |
+
---
|
| 9 |
+
|
| 10 |
# social-auto-upload
|
| 11 |
|
| 12 |
`social-auto-upload` 是一个强大的自动化工具,旨在帮助内容创作者和运营者高效地将视频内容一键发布到多个国内外主流社交媒体平台。
|
|
|
|
| 194 |
```
|
| 195 |
启动容器后访问:[http://localhost:5409](http://localhost:5409)
|
| 196 |
|
| 197 |
+
### Hugging Face Spaces
|
| 198 |
+
|
| 199 |
+
仓库已配置 Docker Space 元数据(`README.md` 顶部 YAML)与端口环境变量。部署步骤与可见性说明见 [docs/deploy-huggingface.md](docs/deploy-huggingface.md)。
|
| 200 |
+
|
| 201 |
## 🐇项目背景
|
| 202 |
|
| 203 |
该项目最初是我个人用于自动化管理社交媒体视频发布的工具。我的主要发布策略是提前一天设置定时发布,因此项目中很多定时发布相关的逻辑是基于“第二天”的时间进行计算的。
|
docs/deploy-huggingface.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Hugging Face Spaces 部署说明
|
| 2 |
+
|
| 3 |
+
本仓库已包含 Docker Space 所需的 `README.md` 元数据(文件首部的 YAML)与 `Dockerfile`。
|
| 4 |
+
|
| 5 |
+
## 创建 Space
|
| 6 |
+
|
| 7 |
+
1. 在 [新建 Space](https://huggingface.co/new-space) 选择 **Docker** SDK(与 README 中 `sdk: docker` 一致)。
|
| 8 |
+
2. 将本仓库推送到该 Space 关联的 Git 仓库,或从 GitHub 同步。
|
| 9 |
+
3. **端口**:README 中 `app_port: 5409` 与 `Dockerfile` 的 `EXPOSE` / `ENV PORT` 一致;若你在 Space 设置里改为其他端口,请同时设置环境变量 `PORT` 与 `app_port` 相同。
|
| 10 |
+
|
| 11 |
+
## 可见性
|
| 12 |
+
|
| 13 |
+
- **Private**:仅你(及协作者)可访问应用与源码,他人访问 URL 会 404(见 [Spaces 文档](https://huggingface.co/docs/hub/spaces-overview#space-visibility))。
|
| 14 |
+
- **Public**:源码与运行中的应用对公众可见。
|
| 15 |
+
- **Protected**(PRO / Team 等):源码私有,应用仍可通过 URL 公开访问。
|
| 16 |
+
|
| 17 |
+
## 注意事项
|
| 18 |
+
|
| 19 |
+
- 镜像构建包含 Playwright Chromium,**构建时间较长**,免费硬件可能较慢;若构建失败可查看 Space 构建日志。
|
| 20 |
+
- 持久化数据需自行购买 Spaces 持久存储或使用外部存储;默认容器内除挂载卷外重启会丢失。
|
| 21 |
+
- 敏感配置请使用 Space **Settings → Secrets / Variables**,勿写入仓库。
|
sau_backend.py
CHANGED
|
@@ -714,4 +714,6 @@ def sse_stream(status_queue):
|
|
| 714 |
time.sleep(0.1)
|
| 715 |
|
| 716 |
if __name__ == '__main__':
|
| 717 |
-
|
|
|
|
|
|
|
|
|
| 714 |
time.sleep(0.1)
|
| 715 |
|
| 716 |
if __name__ == '__main__':
|
| 717 |
+
# 本地默认 5409;Docker / Hugging Face Spaces 可通过环境变量 PORT 覆盖(与 README 中 app_port 一致)
|
| 718 |
+
port = int(os.environ.get("PORT", "5409"))
|
| 719 |
+
app.run(host="0.0.0.0", port=port)
|