JoshData / JoshData/python-email-validator

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

Open
#153 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.4k
Forks
140
PR merge metrics
No merged PRs in 30d

Description

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

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue includes requirements.txt, Dockerfile, docker-compose.yml, and kool.yml, but no repository file, entry point, or test is named. Reproduce the container build from these configurations and inspect the installed packages and import environment. Done means identifying a specific project-level fix or confirming that the problem is external configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, docker-compose, fastapi, python
Domain
backend, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.