
### 📋 Descrição Esta PR aborda dois pontos críticos identificados durante a execução do container da aplicação: #### ✅ Correção de importação no `email_service.py` - Corrigido o caminho da importação: - **De:** `from config.settings import settings` - **Para:** `from src.config.settings import settings` - Essa alteração soluciona o erro `ModuleNotFoundError: No module named 'config'`, que impedia a inicialização da aplicação. #### ✅ Execução automática dos seeders via Dockerfile - Adicionado o script de seeders à sequência de inicialização da aplicação no Dockerfile. - O comando de inicialização foi alterado para: ```bash alembic upgrade head && python -m scripts.run_seeders && uvicorn src.main:app --host $HOST --port $PORT ``` - Isso garante que os seeders (incluindo o usuário admin) sejam executados automaticamente após as migrações. --- ### 💥 Impacto - Corrige o erro de importação, permitindo que a aplicação seja iniciada corretamente. - Automatiza a criação do usuário admin e outros dados iniciais essenciais. - Melhora a experiência de primeira execução, eliminando etapas manuais. --- ### ✅ Testes realizados - Verificado que a aplicação inicia corretamente após as alterações. - Confirmado que os seeders são executados com sucesso, criando o usuário admin e outros dados iniciais conforme esperado. --- ### 📝 Observações - O novo caminho de importação em `email_service.py` está alinhado com o padrão utilizado nos demais arquivos do projeto. - Os seeders são executados somente após a conclusão bem-sucedida das migrações do banco de dados.
37 lines
793 B
Docker
37 lines
793 B
Docker
FROM python:3.10-slim
|
|
|
|
WORKDIR /app
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1 \
|
|
PYTHONPATH=/app
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
build-essential \
|
|
libpq-dev \
|
|
curl \
|
|
gnupg \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
|
|
&& apt-get install -y nodejs \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN curl -fsSL https://get.docker.com | bash
|
|
|
|
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
|
|
COPY . .
|
|
|
|
RUN pip install --no-cache-dir -e .
|
|
|
|
ENV PORT=8000 \
|
|
HOST=0.0.0.0 \
|
|
DEBUG=false
|
|
|
|
# Expose port
|
|
EXPOSE 8000
|
|
|
|
CMD alembic upgrade head && python -m scripts.run_seeders && uvicorn src.main:app --host $HOST --port $PORT |