Вопрос: Python Django Docker - Ошибка Unknown server host 'db' при попытке сделать суперпользователя

Я пытаюсь использовать команды python manage.py createsuperuser и docker exec -it veganetwork-db-1 python manage.py createsuperuser для добавления себя в качестве суперпользователя в мой проект микросервисов, однако когда я пытаюсь запустить обе эти команды, я получаю Unknown server host 'db' в моей Windows Powershell, вот вся ошибка:

Я пробовал некоторые другие методы в других сообщениях, например, создание класса с именем Command в моем скрипте manage.py для создания суперпользователя: Создать суперпользователя django в контейнере docker без ввода пароля, используя docker-compose run django python manage.py createsuperuser, а не обычную команду docker, которая docker exec -it veganetwork-db-1 python manage.py createsuperuser: https://github.com/vchaptsev/cookiecutter-django-vue/issues/25, и, наконец, попытка изменить переменную depends_on в моем файле docker-compose.yml и перезапуск самого контейнера docker: django.db.utils.OperationalError: (2005, "Unknown MySQL server host 'db' (-2)"). Я перепробовал все эти решения, но все они не помогли.

вот мой файл docker-compose, а также мой dockerfile:

version: '3.9'
services:
  backend:
    build:
      context: .
      dockerfile: dockerfile
    command: 'python manage.py runserver 0.0.0.0:8000'
    ports:
      - 8000:8000
    volumes:
      - .:/app
    depends_on:
      - db

  db:
    image: mysql:5.7.22
    restart: always
    environment:
      MYSQL_DATABASE: veganetworkmain
      MYSQL_USER: root
      MYSQL_PASSWORD: root
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - .dbdata:/var/lib/mysql
    ports:
      - 3306:3306

dockerfile:

FROM python:3.9
ENV PYTHONUNBUFFERED 1
WORKDIR /app
COPY requirements.txt /app/requirements.txt
RUN pip install -r requirements.txt
COPY . /app

CMD python manage.py runserver 0.0.0.0:8000

Что именно я делаю неправильно, спасибо!

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