HulkToigo commited on
Commit
272acee
·
verified ·
1 Parent(s): ed9f164

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +32 -0
Dockerfile ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Utiliza imagem oficial leve do Python
2
+ FROM python:3.10-slim
3
+
4
+ # Instala dependências de compilação essenciais para o llama.cpp em C++
5
+ RUN apt-get update && apt-get install -y \
6
+ build-essential \
7
+ python3-dev \
8
+ git \
9
+ && rm -rf /var/lib/apt/lists/*
10
+
11
+ # Configura o diretório de trabalho interno
12
+ WORKDIR /code
13
+
14
+ # Instala as dependências Python antecipadamente para aproveitar o cache do Docker
15
+ COPY ./requirements.txt /code/requirements.txt
16
+ RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
17
+
18
+ # Cria um usuário não-root (Exigência obrigatória de segurança do HF Spaces)
19
+ RUN useradd -m -u 1000 user
20
+ USER user
21
+ ENV HOME=/home/user \
22
+ PATH=/home/user/.local/bin:$PATH
23
+
24
+ # Define a pasta do app e copia os arquivos com a permissão correta
25
+ WORKDIR $HOME/app
26
+ COPY --chown=user . $HOME/app
27
+
28
+ # O Hugging Face Spaces exige que containers Docker escutem estritamente na porta 7860
29
+ EXPOSE 7860
30
+
31
+ # Comando para iniciar o servidor Flask
32
+ CMD ["python", "app.py"]