Ошибка при запуске Django проекта из Docker есть на одной машине, но нет на другой

Предисловие. Я новичок в Docker, могу как-то неправильно составлять файлы и путаться в терминологии. Прошу не судить строго.

Создал Django проект с помощью Docker и Docker Compose.

Dockerfile:

# pull official base image
FROM ubuntu:20.04
# set work directory
WORKDIR /usr/src/project
# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# install dependencies
SHELL ["/bin/bash", "-c"]
RUN apt-get update
RUN apt install software-properties-common curl -y
RUN apt install apt-transport-https
RUN add-apt-repository ppa:deadsnakes/ppa
RUN curl -sSL https://packages.microsoft.com/keys/microsoft.asc | tee /etc/apt/trusted.gpg.d/microsoft.asc
RUN apt-add-repository https://packages.microsoft.com/ubuntu/20.04/prod
RUN apt update
RUN curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN apt-get install python3.10 python3-pip gcc python3-dev musl-dev g++ unixodbc unixodbc-dev -y
RUN pip install --upgrade pip
RUN ACCEPT_EULA=Y apt install -y --allow-unauthenticated msodbcsql17
RUN ACCEPT_EULA=Y apt install -y --allow-unauthenticated mssql-tools
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
RUN source ~/.bashrc
RUN source ~/.bash_profile
COPY ./requirements.txt .
RUN /usr/bin/pip3 install -r requirements.txt
# copy project
COPY . .

docker-compose.yml

version: '3.7'
services:
  test-database:
    image: mcr.microsoft.com/mssql/server:2019-latest
    environment:
      - ACCEPT_EULA=Y
      - SA_PASSWORD=pass123
    volumes:
      - database-data:/var/opt/mssql
    ports:
      - 1433:1433
  web:
    build:
      context: ./project
      dockerfile: Dockerfile
    command: /usr/bin/python3 project/manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/usr/src/project/
    ports:
      - 8000:8000
    depends_on:
      - test-database

volumes:
  database-data:

Поднимаю проект через команды docker build project и docker-compose up -d

На моей машине все работает идеально. Однако, когда репозиторий клонировал другой человек и попытался запустить через команды выше, у него запустилась только СУБД. В образе с Django возникает ошибка

ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment

Для того, чтобы воспроизвести ошибку на своей машине я пересобирал контейнер через docker build --no-cache, удалял контейнеры через docker container prune и очищал Build Cache через docker builder prune. Ничего не сработало. На моей машине всё запускается хорошо, на машине товарища возникает та же самая ошибка.

Три вопроса:

Почему возникает различный результат при запуске контейнера на разных машинах?

Как исправить ошибку, возникающую на компьютере товарища?

Как избежать такой ситуации в будущем, когда результат запуска образов на разный на разных машинах?

Заранее большое спасибо за ответы по вопросу.

P.S. Ниже логи выполнения pip

#24 [20/21] RUN /usr/bin/pip3 install -r requirements.txt
#24 sha256:881e67b5f29864829159bf3757afa7ba4401f2a9c59d4de9c0cbbf7be1b665cb
#24 1.796 Collecting asgiref==3.5.1
#24 2.010   Downloading asgiref-3.5.1-py3-none-any.whl (22 kB)
#24 2.128 Collecting certifi==2021.10.8
#24 2.177   Downloading certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
#24 2.513 Collecting charset-normalizer==2.0.12
#24 2.564   Downloading charset_normalizer-2.0.12-py3-none-any.whl (39 kB)
#24 2.859 Collecting Django==4.0
#24 2.910   Downloading Django-4.0-py3-none-any.whl (8.0 MB)
#24 5.148 Collecting djangorestframework==3.13.1
#24 5.214   Downloading djangorestframework-3.13.1-py3-none-any.whl (958 kB)
#24 5.630 Collecting djangorestframework-simplejwt==5.1.0
#24 5.682   Downloading djangorestframework_simplejwt-5.1.0-py3-none-any.whl (78 kB)
#24 5.830 Collecting idna==3.3
#24 5.878   Downloading idna-3.3-py3-none-any.whl (61 kB)
#24 5.958 Collecting mssql-django==1.1.3
#24 6.007   Downloading mssql_django-1.1.3-py3-none-any.whl (83 kB)
#24 6.163 Collecting PyJWT==2.6.0
#24 6.211   Downloading PyJWT-2.6.0-py3-none-any.whl (20 kB)
#24 6.440 Collecting pyodbc==4.0.23
#24 6.499   Downloading pyodbc-4.0.23.tar.gz (215 kB)
#24 7.040 Collecting pytz==2022.1
#24 7.090   Downloading pytz-2022.1-py2.py3-none-any.whl (503 kB)
#24 7.487 Collecting requests==2.27.1
#24 7.536   Downloading requests-2.27.1-py2.py3-none-any.whl (63 kB)
#24 7.650 Collecting sqlparse==0.4.2
#24 7.699   Downloading sqlparse-0.4.2-py3-none-any.whl (42 kB)
#24 7.801 Collecting tzdata==2022.1
#24 7.853   Downloading tzdata-2022.1-py2.py3-none-any.whl (339 kB)
#24 8.214 Collecting urllib3==1.26.9
#24 8.270   Downloading urllib3-1.26.9-py2.py3-none-any.whl (138 kB)
#24 8.404 Collecting backports.zoneinfo; python_version < "3.9"
#24 8.461   Downloading backports.zoneinfo-0.2.1-cp38-cp38-manylinux1_x86_64.whl (74 kB)
#24 8.490 Building wheels for collected packages: pyodbc
#24 8.491   Building wheel for pyodbc (setup.py): started
#24 13.65   Building wheel for pyodbc (setup.py): finished with status 'done'
#24 13.65   Created wheel for pyodbc: filename=pyodbc-4.0.23-cp38-cp38-linux_x86_64.whl size=330757 sha256=3ae0e519927ca495b61a69709518599245be1c6df34c7e56f323e168f3ee57e0
#24 13.65   Stored in directory: /root/.cache/pip/wheels/da/29/57/af42bfee30b0cf3301b5e0d1ed4e8e70634490c5ce046ea2fd
#24 13.65 Successfully built pyodbc
#24 13.83 Installing collected packages: asgiref, certifi, charset-normalizer, sqlparse, backports.zoneinfo, Django, pytz, djangorestframework, PyJWT, djangorestframework-simplejwt, idna, pyodbc, mssql-django, urllib3, requests, tzdata
#24 13.85   Attempting uninstall: certifi
#24 13.85     Found existing installation: certifi 2019.11.28
#24 13.86     Not uninstalling certifi at /usr/lib/python3/dist-packages, outside environment /usr
#24 13.86     Can't uninstall 'certifi'. No files were found to uninstall.
#24 18.82   Attempting uninstall: idna
#24 18.82     Found existing installation: idna 2.8
#24 18.82     Not uninstalling idna at /usr/lib/python3/dist-packages, outside environment /usr
#24 18.82     Can't uninstall 'idna'. No files were found to uninstall.
#24 19.02   Attempting uninstall: urllib3
#24 19.02     Found existing installation: urllib3 1.25.8
#24 19.02     Not uninstalling urllib3 at /usr/lib/python3/dist-packages, outside environment /usr
#24 19.02     Can't uninstall 'urllib3'. No files were found to uninstall.
#24 19.11   Attempting uninstall: requests
#24 19.11     Found existing installation: requests 2.22.0
#24 19.11     Not uninstalling requests at /usr/lib/python3/dist-packages, outside environment /usr
#24 19.11     Can't uninstall 'requests'. No files were found to uninstall.
#24 19.50 Successfully installed Django-4.0 PyJWT-2.6.0 asgiref-3.5.1 backports.zoneinfo-0.2.1 certifi-2021.10.8 charset-normalizer-2.0.12 djangorestframework-3.13.1 djangorestframework-simplejwt-5.1.0 idna-3.3 mssql-django-1.1.3 pyodbc-4.0.23 pytz-2022.1 requests-2.27.1 sqlparse-0.4.2 tzdata-2022.1 urllib3-1.26.9
#24 DONE 20.4s

P.P.S. На моей машине стоит Windows 11, на машине товарища - Windows 10


Ответы (0 шт):