enpaiva commited on
Commit
4d1b4ca
verified
1 Parent(s): 7ddab05

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +40 -0
Dockerfile ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Usa una imagen base de Python ligera
2
+ FROM python:3.9-slim
3
+
4
+ # Instala dependencias del sistema necesarias para Graphviz y otras herramientas
5
+ RUN apt-get update && apt-get install -y \
6
+ graphviz \
7
+ build-essential \
8
+ pkg-config \
9
+ libgirepository1.0-dev \
10
+ git \
11
+ --no-install-recommends && \
12
+ rm -rf /var/lib/apt/lists/*
13
+
14
+ # Crea un usuario no root para mayor seguridad
15
+ RUN useradd -m -u 1000 user
16
+ USER user
17
+
18
+ # Establece el directorio de trabajo
19
+ ENV HOME=/home/user \
20
+ PATH=/home/user/.local/bin:$PATH
21
+ WORKDIR $HOME/app
22
+
23
+ # Copia tu aplicaci贸n Gradio y el archivo requirements.txt al contenedor
24
+ COPY . .
25
+
26
+ # Instala las dependencias de Python
27
+ RUN pip install --no-cache-dir -r requirements.txt
28
+
29
+ # Descarga el modelo de SpaCy (esto se ejecuta solo una vez durante la construcci贸n de la imagen)
30
+ RUN python -m spacy download es_dep_news_trf
31
+
32
+ # Crea el directorio 'outputs' donde se guardar谩n los gr谩ficos
33
+ # Esto es importante para que el usuario 'user' tenga permisos de escritura
34
+ RUN mkdir -p outputs && chown user:user outputs
35
+
36
+ # Exp贸n el puerto que Gradio usa por defecto
37
+ EXPOSE 7860
38
+
39
+ # Define el comando para ejecutar tu aplicaci贸n Gradio
40
+ ENTRYPOINT ["python", "app.py"]