python-email-validator icon indicating copy to clipboard operation
python-email-validator copied to clipboard

:bug: ImportError: email-validator is not installed using Docker, Pydantic and Kool

Open almsx opened this issue 1 year ago • 1 comments

Hi Josh,

I’m currently using the email-validator package for a model in FastAPI to validate email addresses.

However, when deploying the code inside a Docker container, I encounter the following error:

ImportError: email-validator is not installed, run

pip install pydantic[email]

I’ve already included the email-validator package in my requirements.txt file and tested different versions, ranging from 1.0.9 to the latest version, alongside Pydantic. Unfortunately, the issue persists.

I’m attaching the configuration files used in my project for your reference.

requirements.txt

fastapi
uvicorn
pydantic==2.10
email-validator
pydantic[email]

Dockerfile

FROM python:3.10-slim

WORKDIR /app

COPY requirements.txt .
COPY . .

RUN pip install --no-cache-dir -r requirements.txt

EXPOSE 8000

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

docker-compose.yml

version: "3.8"

services:
  fastapi:
    build:
      context: .
    ports:
      - "9000:8000"
    volumes:
      - .:/app
      - /app/__pycache__/
    environment:
      - PYTHONUNBUFFERED=1
    command: uvicorn main:app --host 0.0.0.0 --port 8000 --reload

kool.yml

name: fastapi-app

services:
  - fastapi

scripts:
  build:
    - docker-compose build
  start:
    - kool run build
    - docker-compose up
  stop:
    - docker-compose down
  restart:
    - kool stop
    - kool start

Do you have any idea where I might be going wrong?

Best regards from Mexico, Alberto

almsx avatar Jan 14 '25 00:01 almsx

That looks like a pydantic error or an issue with the local Python environment and without any Python code or a Python stack trace to look at there's not much for me to go on.

JoshData avatar Jan 14 '25 00:01 JoshData