CreatorKit Claude Opus 4.8 commited on
Commit
d490076
·
1 Parent(s): c66d152

fix: build do Docker no HF Spaces (UID 1000 ja existe)

Browse files

A imagem node:20-slim ja inclui o usuario "node" (UID 1000), entao
"useradd -u 1000" falhava com "UID is not unique". Passa a usar o
usuario node existente.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Files changed (1) hide show
  1. Dockerfile +4 -4
Dockerfile CHANGED
@@ -10,8 +10,8 @@ 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
- # Usuário não-root (Hugging Face Spaces roda como UID 1000)
14
- RUN useradd -m -u 1000 user
15
 
16
  WORKDIR /app
17
 
@@ -22,7 +22,7 @@ RUN npm install --omit=dev && npm cache clean --force
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
@@ -30,6 +30,6 @@ 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"]
 
10
  && chmod a+rx /usr/local/bin/yt-dlp \
11
  && apt-get clean && rm -rf /var/lib/apt/lists/*
12
 
13
+ # A imagem node:20-slim traz o usuário "node" (UID 1000), que é o
14
+ # que o Hugging Face Spaces espera. Usamos ele em vez de criar outro.
15
 
16
  WORKDIR /app
17
 
 
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 node:node /app
26
 
27
  ENV NODE_ENV=production
28
  ENV YTDLP_PATH=/usr/local/bin/yt-dlp
 
30
  # Porta padrão do Hugging Face Spaces (Render injeta sua própria via $PORT)
31
  ENV PORT=7860
32
 
33
+ USER node
34
  EXPOSE 7860
35
  CMD ["node", "server.js"]