# Use uma imagem base Python oficial FROM python:3.10-slim # Define o diretório de trabalho no contêiner WORKDIR /code # Instala dependências de sistema (Tesseract e idioma Português) # O RUN executa comandos no shell do contêiner durante o build RUN apt-get update && apt-get install -y --no-install-recommends \ tesseract-ocr \ tesseract-ocr-por \ # Adicione outras dependências de sistema se OpenCV precisar (pode não ser necessário com headless) # Ex: libgl1-mesa-glx libglib2.0-0 # Limpa o cache do apt para reduzir o tamanho da imagem && rm -rf /var/lib/apt/lists/* # Copia o arquivo de requisitos primeiro (para aproveitar o cache do Docker) COPY requirements.txt requirements.txt # Instala as dependências Python RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir -r requirements.txt # Copia todo o resto do código do seu projeto para o diretório de trabalho COPY . . # Expõe a porta que o Gradio usará (padrão 7860) EXPOSE 7860 # Comando para executar a aplicação quando o contêiner iniciar # O CMD usa a forma exec (lista JSON) que é preferível CMD ["python", "app.py"]