Отладка Django с помощью VS Code внутри контейнера Docker отключает контейнер

Я следую этому руководству по отладке Django внутри контейнера Docker с помощью VS Code. Единственное отличие, которое я сделал, это изменил порты на 8000 и хост на 0.0.0.0, потому что в моем docker-compose все именно так. Я понятия не имею, почему веб-контейнер выключается, когда я запускаю Django с точкой останова внутри представления, потому что я действительно не знаю, откуда исходит проблема. Единственное, что я могу предположить, это файл vscode/launch.json, который устанавливается следующим образом:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Run Django",
      "type": "python",
      "request": "attach",
      "pathMappings": [
        {
          "localRoot": "${workspaceFolder}/app",
          "remoteRoot": "/usr/src/app"
        }
      ],
      "port": 8000,
      "host": "0.0.0.0",
    }
  ]
} 

Есть идеи, почему это не работает или откуда берется проблема?

Вы используете Mac или WSL1? Я видел, как Docker заканчивал память на VSCode при использовании отладчика специально с точками останова.

Виртуализация Docker осуществляется на уровне ОС, однако для достижения такой виртуализации ОС ядро вашей машины должно быть таким же, как и у контейнера (вот почему Windows имеет WSL2), но MacOS работает на Darwin, а не на Linux, поэтому ей нужен другой уровень (LinuxKit VM).

Пожалуйста, проверьте, есть ли в настройках вашего Docker вкладка Resources. Если да, дайте ей больше памяти, отладка VSCode довольно тяжела в Django.

enter image description here

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