JoshData / JoshData/python-email-validator
:bug: ImportError: email-validator is not installed using Docker, Pydantic and Kool
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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