Контейнер docker для Django зависает при обновлении монтируемых источников

В рамках курса, который я сейчас прохожу, есть ситуация, когда используется следующая комбинация:

Для очень стандартного сценария создается контейнер docker: Один для Django, второй для базы данных Postgresql, а затем файл compose управляет всем этим. А исходники фактически монтируются с помощью томов docker-compose.

Все приложение, которое я создал во время курса, доступно на моем github: https://github.com/arsenhakobyan/recipe-app-api

Проблема, с которой я столкнулся, заключается в выполнении команды django test каждый раз, когда я обновляю любой исходный файл.

Шаги для воспроизведения проблемы, которая у меня возникла:

  1. постройте изображения с помощью docker-compose build
  2. выполните следующую команду: docker-compose run --rm app sh -c "python manage.py test"
  3. Процесс должен запуститься, как ожидалось.
  4. Отредактируйте любой файл (например, app->user->tests->test_user_api.py) и сохраните изменения
  5. .
  6. выполните команду из шага 2. Процесс зависает на этом этапе в моем случае, и я даже не могу заставить удалить контейнеры docker, даже попытался деактивировать некоторые конечные точки из сети, которая связана с этими контейнерами (я думаю, что это может помочь, когда я читаю некоторые сообщения об ошибках). Единственный способ продолжить работу - перезапустить docker exe на моей машине.

Дайте мне знать, если это будет предпочтительнее, чтобы скопировать некоторый код или содержимое файла здесь.

Немного информации о машине и версии docker: машина: Machbook Pro, MacOS Moterey версия 12.3.1 docker: Docker Desktop 4.8.2 (79419) docker-compose версия 1.29.2, сборка 5becea4c

В моем опыте это было связано с большой нагрузкой на контейнеры docker. У меня был мой веб-сервер + redis + postgre сервисы, собранные локально, все в моем docker compose, и это вызвало проблему. Я перенес сервис postgre на AWS и не использовал для этого образ docker, так что теперь в docker compose работают только redis и webserver, и он не зависает всякий раз, когда я обновляю любой код в моем проекте и плавно перестраиваюсь.

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