ASTAROTH0405 commited on
Commit
0a9602f
·
verified ·
1 Parent(s): 2885da8

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +8 -19
Dockerfile CHANGED
@@ -2,14 +2,11 @@
2
  FROM agent0ai/agent-zero:latest
3
 
4
  ENV PYTHONUNBUFFERED=1 \
5
- PORT=7860 \
6
- HOME=/home/agent \
7
- USER=agent \
8
- LOGNAME=agent
9
 
10
  USER root
11
 
12
- # 1. Instalar dependencias críticas (excluyendo setpriv que ya viene preinstalado)
13
  RUN apt-get update && apt-get install -y \
14
  tesseract-ocr \
15
  poppler-utils \
@@ -17,24 +14,16 @@ RUN apt-get update && apt-get install -y \
17
  pandoc \
18
  && rm -rf /var/lib/apt/lists/*
19
 
20
- # 2. Configurar el usuario agent (UID 1000) utilizado por Hugging Face
21
- RUN groupadd -g 1000 agent || true && \
22
- useradd -u 1000 -g 1000 -m -s /bin/bash agent || true
 
23
 
24
- # 3. Crear estructuras y asignar permisos recursivos en tiempo de construcción (Build-time)
25
- # Esto asegura que el runtime UID 1000 tenga control total sobre sus propios archivos
26
- RUN mkdir -p /data /home/agent/.local /a0/usr /git/agent-zero /opt/venv /opt/venv-a0 && \
27
- chown -R 1000:1000 /data /home/agent /a0 /git /opt
28
-
29
- # 4. Cambiar al usuario no privilegiado para que el resto del contenedor corra bajo la política de HF
30
- USER agent
31
-
32
- # 5. Copiar el script de arranque robusto
33
- COPY --chown=1000:1000 start.sh /start.sh
34
  RUN chmod 755 /start.sh
35
 
36
- # Declarar el puerto de escucha y el volumen de persistencia
37
  VOLUME ["/data"]
38
  EXPOSE 7860
39
 
 
40
  ENTRYPOINT ["/start.sh"]
 
2
  FROM agent0ai/agent-zero:latest
3
 
4
  ENV PYTHONUNBUFFERED=1 \
5
+ PORT=7860
 
 
 
6
 
7
  USER root
8
 
9
+ # Instalar herramientas útiles (opcional)
10
  RUN apt-get update && apt-get install -y \
11
  tesseract-ocr \
12
  poppler-utils \
 
14
  pandoc \
15
  && rm -rf /var/lib/apt/lists/*
16
 
17
+ # El usuario agent se creará dentro del script si no existe (por seguridad)
18
+ # Solo preparamos directorios base y permisos iniciales
19
+ RUN mkdir -p /home/agent/.local /a0/usr /git/agent-zero /opt/venv /opt/venv-a0 && \
20
+ chown -R 1000:1000 /home/agent /a0 /git /opt 2>/dev/null || true
21
 
22
+ COPY start.sh /start.sh
 
 
 
 
 
 
 
 
 
23
  RUN chmod 755 /start.sh
24
 
 
25
  VOLUME ["/data"]
26
  EXPOSE 7860
27
 
28
+ # El script se ejecuta como root y luego baja a agent
29
  ENTRYPOINT ["/start.sh"]