RUN pip install --no-cache-dir -r requirements.txt installing but no working with Docker

I've trying to use docker for a couple of projects, one is a Django and another is a python telegram bot; But in both cases the problem is that no matter how I copy or install requirements.txt into the container, the libraries apparently get installed, but then all of a sudden I get errors like this in the main python container:

telegram-bot-container | File "/app/run.py", line 15, in <module> telegram-bot-container | import logging, mysql_handler, cmc_handler, constants telegram-bot-container | File "/app/mysql_handler.py", line 2, in <module> telegram-bot-container | from decouple import config telegram-bot-container | ModuleNotFoundError: No module named 'decouple'

And I have to install all missing libraries like this, as if requirements.txt was redundant!:

pip install python-telegram-bot mysql-connector-python python-coinmarketcap python-decouple

Please help me identify the problem.

My whole Dockerfile:

FROM python:3.10-slim

WORKDIR /app

COPY ./requirements.txt /app/

RUN python -m pip install --upgrade pip && \
    pip install --no-cache-dir -r requirements.txt || echo "Skipping problematic package." && \
    pip install python-telegram-bot mysql-connector-python python-coinmarketcap 

COPY . /app

EXPOSE 8081

CMD ["python", "run.py" ]

I tried rebuilding with/without caching. I can see that the packages are being installed in logs.

Вернуться на верх