Spaces:
Sleeping
Sleeping
CreatorKit Claude Opus 4.8 commited on
Commit ·
c66d152
1
Parent(s): f00aab1
chore: configura deploy no Hugging Face Spaces
Browse files- Cabecalho de metadata do HF Spaces no topo do README (sdk docker,
app_port 7860).
- Dockerfile: usuario nao-root (UID 1000, exigido pelo HF), porta
padrao 7860 via ENV PORT, permissoes de escrita nas pastas de cache
e temporarios.
- README com passo a passo de deploy no HF Spaces (16GB RAM gratis,
roda a transcricao Whisper sem custo).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Dockerfile +11 -4
- README.md +23 -0
Dockerfile
CHANGED
|
@@ -1,4 +1,4 @@
|
|
| 1 |
-
# CreatorKit — imagem de produção
|
| 2 |
# Debian slim (glibc) porque o onnxruntime do Whisper não roda bem em Alpine/musl.
|
| 3 |
FROM node:20-slim
|
| 4 |
|
|
@@ -10,19 +10,26 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
| 10 |
&& chmod a+rx /usr/local/bin/yt-dlp \
|
| 11 |
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
| 12 |
|
|
|
|
|
|
|
|
|
|
| 13 |
WORKDIR /app
|
| 14 |
|
| 15 |
# Instala dependências (camada cacheável)
|
| 16 |
COPY package*.json ./
|
| 17 |
RUN npm install --omit=dev && npm cache clean --force
|
| 18 |
|
| 19 |
-
# Copia o restante do código
|
| 20 |
COPY . .
|
|
|
|
|
|
|
| 21 |
|
| 22 |
ENV NODE_ENV=production
|
| 23 |
ENV YTDLP_PATH=/usr/local/bin/yt-dlp
|
| 24 |
-
# Cache dos modelos Whisper dentro do app
|
| 25 |
ENV XENOVA_CACHE_DIR=/app/.cache
|
|
|
|
|
|
|
| 26 |
|
| 27 |
-
|
|
|
|
| 28 |
CMD ["node", "server.js"]
|
|
|
|
| 1 |
+
# CreatorKit — imagem de produção (Render, Hugging Face Spaces, etc.)
|
| 2 |
# Debian slim (glibc) porque o onnxruntime do Whisper não roda bem em Alpine/musl.
|
| 3 |
FROM node:20-slim
|
| 4 |
|
|
|
|
| 10 |
&& chmod a+rx /usr/local/bin/yt-dlp \
|
| 11 |
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
| 12 |
|
| 13 |
+
# Usuário não-root (Hugging Face Spaces roda como UID 1000)
|
| 14 |
+
RUN useradd -m -u 1000 user
|
| 15 |
+
|
| 16 |
WORKDIR /app
|
| 17 |
|
| 18 |
# Instala dependências (camada cacheável)
|
| 19 |
COPY package*.json ./
|
| 20 |
RUN npm install --omit=dev && npm cache clean --force
|
| 21 |
|
| 22 |
+
# Copia o restante do código e dá posse ao usuário não-root
|
| 23 |
COPY . .
|
| 24 |
+
RUN mkdir -p /app/.cache /app/downloads /app/uploads /app/bin \
|
| 25 |
+
&& chown -R user:user /app
|
| 26 |
|
| 27 |
ENV NODE_ENV=production
|
| 28 |
ENV YTDLP_PATH=/usr/local/bin/yt-dlp
|
|
|
|
| 29 |
ENV XENOVA_CACHE_DIR=/app/.cache
|
| 30 |
+
# Porta padrão do Hugging Face Spaces (Render injeta sua própria via $PORT)
|
| 31 |
+
ENV PORT=7860
|
| 32 |
|
| 33 |
+
USER user
|
| 34 |
+
EXPOSE 7860
|
| 35 |
CMD ["node", "server.js"]
|
README.md
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
# ✦ CreatorKit
|
| 2 |
|
| 3 |
Plataforma local para criadores de conteúdo. Transcreve vídeos e gera caption, thread, post de blog, hooks, ideias, hashtags, bio, roteiro e calendário — tudo processado na própria máquina/servidor, sem API externa.
|
|
@@ -36,6 +46,19 @@ docker run -p 5050:5050 creatorkit
|
|
| 36 |
|
| 37 |
A imagem já inclui `ffmpeg`, `python3` e `yt-dlp`.
|
| 38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 39 |
## ☁️ Deploy em Render / Railway / Fly.io
|
| 40 |
|
| 41 |
O projeto está pronto para qualquer plataforma que rode Docker:
|
|
|
|
| 1 |
+
---
|
| 2 |
+
title: CreatorKit
|
| 3 |
+
emoji: 🎬
|
| 4 |
+
colorFrom: purple
|
| 5 |
+
colorTo: pink
|
| 6 |
+
sdk: docker
|
| 7 |
+
app_port: 7860
|
| 8 |
+
pinned: false
|
| 9 |
+
---
|
| 10 |
+
|
| 11 |
# ✦ CreatorKit
|
| 12 |
|
| 13 |
Plataforma local para criadores de conteúdo. Transcreve vídeos e gera caption, thread, post de blog, hooks, ideias, hashtags, bio, roteiro e calendário — tudo processado na própria máquina/servidor, sem API externa.
|
|
|
|
| 46 |
|
| 47 |
A imagem já inclui `ffmpeg`, `python3` e `yt-dlp`.
|
| 48 |
|
| 49 |
+
## 🤗 Deploy no Hugging Face Spaces (grátis, com transcrição)
|
| 50 |
+
|
| 51 |
+
O HF Spaces dá **16 GB de RAM grátis**, o suficiente para rodar o Whisper. O projeto já está configurado (cabeçalho no topo deste README + porta `7860` no Dockerfile).
|
| 52 |
+
|
| 53 |
+
1. Crie uma conta em https://huggingface.co
|
| 54 |
+
2. **New Space** → SDK **Docker** → visibilidade **Public**
|
| 55 |
+
3. Suba o código no repositório do Space:
|
| 56 |
+
```bash
|
| 57 |
+
git remote add space https://huggingface.co/spaces/SEU-USUARIO/creatorkit
|
| 58 |
+
git push space main
|
| 59 |
+
```
|
| 60 |
+
4. O Space builda o `Dockerfile` sozinho. Em alguns minutos fica no ar com transcrição funcionando.
|
| 61 |
+
|
| 62 |
## ☁️ Deploy em Render / Railway / Fly.io
|
| 63 |
|
| 64 |
O projeto está pronto para qualquer plataforma que rode Docker:
|