Проблемы отладки докеризованного веб-приложения в VS Code

Я изучаю веб-разработку самостоятельно с помощью различных видео на youtube и книг. Я использую VS code и начал создавать свои собственные веб-приложения в контейнерах Docker (прочитал где-то о преимуществах использования контейнеров). Я создал несколько приложений в рамках проекта, однако, поскольку приложения становятся все сложнее и сложнее, мне трудно отладить приложение на предмет ошибок и понять, где я иду не так. Я собираюсь изложить код, который я использую для файлов docker, task.json и launch.json.

DOCKERFILE

# For more information, please refer to https://aka.ms/vscode-docker-python
FROM python:3-slim

EXPOSE 8000
# Expose port for debugpy
EXPOSE 5678

# Keeps Python from generating .pyc files in the container
ENV PYTHONDONTWRITEBYTECODE=1

# Turns off buffering for easier container logging
ENV PYTHONUNBUFFERED=1

# Install debugpy for debugging
RUN python -m pip install debugpy

# Install pip requirements
COPY requirements.txt .
RUN python -m pip install -r requirements.txt

WORKDIR /app
COPY . /app

# Creates a non-root user with an explicit UID and adds permission to access the /app folder
# For more info, please refer to https://aka.ms/vscode-docker-python-configure-containers
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
USER appuser

# # During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug
# CMD ["gunicorn", "--bind", "0.0.0.0:8000", "DRM_Inventory.wsgi"]

# Command to start Django with debugpy

CMD ["sh", "-c", "pip install debugpy -t /tmp && python /tmp/debugpy --wait-for-client --listen 0.0.0.0:5678 manage.py runserver 0.0.0.0:8000 --nothreading --noreload"]

# docker-compose.yml

version: "3.9"
services:
  web:
    build: .
    command: python /DRM_Django_App/manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/DRM_Django_App
    ports:
      - 8000:8000
    depends_on:
      - db
  db:
    image: postgres:13
    volumes:
      - postgres_data:/var/lib/postgresql/data/
    environment:
      - "POSTGRES_HOST_AUTH_METHOD=trust"
    ports:
      - "5432:5432" # Expose PostgreSQL default port for debugging
    command:
      [
        "postgres",
        "-c",
        "log_statement=all",
        "-c",
        "log_destination=stderr"
      ]
volumes:
  postgres_data:

# docker-compose.debug.yml

version: '3.4'

services:
  drmdjangoapp:
    image: drmdjangoapp
    build:
      context: .
      dockerfile: ./Dockerfile
    command:
      [
        "sh",
        "-c",
        "pip install debugpy -t /tmp && python /tmp/debugpy --wait-for-client --listen 0.0.0.0:5678 manage.py runserver 0.0.0.0:8000 --nothreading --noreload"
      ]
    ports:
      - 8000:8000
      - 5678:5678
    volumes:
      - .:/app
    depends_on:
      - db

  db:
    image: postgres:13
    volumes:
      - postgres_data:/var/lib/postgresql/data/
    environment:
      - "POSTGRES_HOST_AUTH_METHOD=trust"
    ports:
      - "5432:5432"
volumes:
  postgres_data:

task.json:

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "docker-build",
            "label": "docker-build",
            "platform": "python",
            "dockerBuild": {
                "tag": "drmdjangoapp:latest",
                "dockerfile": "${workspaceFolder}/Dockerfile",
                "context": "${workspaceFolder}",
                "pull": true
            }
        },
        {
            "type": "docker-run",
            "label": "docker-run: debug",
            "dependsOn": [
                "docker-build"
            ],
            "dockerRun": {
                "env": {
                    "PYTHONUNBUFFERED": "1"
                },
                "ports": [
                    {
                        "containerPort": 8000,
                        "hostPort": 8000
                    },
                    {
                        "containerPort": 5678,
                        "hostPort": 5678
                    }
                ],
                "volumes": [
                    {
                        "containerPath": "/app",
                        "localPath": "${workspaceFolder}"
                    }
                ]
            }
        }
    ]
}

launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Docker: Python - Django",
            "type": "docker",
            "request": "launch",
            "preLaunchTask": "docker-run: debug",
            "python": {
                "pathMappings": [
                    {
                        "localRoot": "${workspaceFolder}",
                        "remoteRoot": "/app"
                    }
                ],
                "projectType": "django"
            }
        }
    ]
}

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

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