| # 1. Use uma imagem Python oficial como base | |
| FROM python:3.10-slim | |
| # 2. Defina o diretório de trabalho dentro do contêiner | |
| WORKDIR /app | |
| # 3. Copie o arquivo de dependências primeiro para aproveitar o cache do Docker | |
| COPY requirements.txt . | |
| # 4. Instale as dependências | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # 5. Copie todos os outros arquivos do projeto | |
| COPY . . | |
| # 6. Torne o script de inicialização executável | |
| RUN chmod +x ./start.sh | |
| # 7. Exponha a porta que o Chainlit usará para o mundo exterior | |
| EXPOSE 7860 | |
| # 8. Defina o comando para executar quando o contêiner iniciar | |
| CMD ["./start.sh"] |