MySQL/Django/Docker -> 1045, "1045 (28000): Доступ запрещен для пользователя 'X'@'xx.xxx.xx.xx' (использующего пароль: YES)", '28000'

У меня есть mariadb/mysql и django, запущенные как отдельные контейнеры docker (оба имеют отдельные файлы docker-compose.yml).

Когда я пытаюсь собрать свой докер-контейнер django, используя docker-compose build (для этого у меня есть Dockerfile с командами makemigrations и migrate в нем), мой контейнер собирается нормально и правильно, и python manage.py makemigrations и python manage.py migrate также работают нормально.

Однако когда я делаю docker exec -ti <django-container-name> bash и пытаюсь запустить python manage.py makemigrations и python manage.py migrate, это не работает.

Я получаю 1045, "1045 (28000): Access denied for user '<user>'@'<host>' (using password: YES)", '28000' ошибку.

Аналогично, когда я пытаюсь сделать mysql -h <hostname> -P <port> -u <username> -p, я получаю ошибку bash, говорящую, что mysql не существует (я также получаю эту же ошибку, когда я делаю просто mysql).

Доступ к MariaDB: Когда я делаю docker exec -ti <mariadb-container-name> bash и запускаю команду mysql, я могу видеть миграции из начальной сборки django, но ничего больше после этого.

Где я ошибаюсь, что django может собрать и выполнить makemigrations/migrate, но не будет выполнять эти команды внутри контейнера docker после того, как он будет запущен?

Я должен уточнить, что mariadb/mysql и django работают в одной сети docker, но имеют разные ipv4-адреса.

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