Дело происходит ubunta. Без докера пара Django и MySQL, а вот мой докер здесь лишний и портит жизнь всем, включая меня. Итак, два контейнера запущены, но миграцию не могу сделать, ошибка
django.db.utils.OperationalError: (1045, 'Plugin caching_sha2_password could not be loaded: /usr/lib/x86_64-linux-gnu/mariadb19/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory')
Docker-compose:
version: '3'
services:
python:
restart: always
build:
context: .
dockerfile: dockerfile
command:
python manage.py runserver 0.0.0.0:9000
volumes:
- ./:/usr/src
ports:
- "9000:9000"
links:
- db
db:
image: mysql:latest
ports:
- "3306:3306"
volumes:
- .:/code
environment:
MYSQL_DATABASE: 'useraccdb'
MYSQL_USER: 'root'
MYSQL_PASSWORD: '1111'
MYSQL_ROOT_PASSWORD: '1111'
Dockerfile:
FROM python:3.7
WORKDIR /usr/src/
COPY ./ ./
RUN pip install -r requirements.txt && apt-get clean
requirements.txt
Django==2.2
mysql-connector-python
mysqlclient==1.4.4
settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'useraccdb',
'USER': 'root',
'PASSWORD': '1111',
'HOST': 'db',
'PORT': 3306,
}
}
После запуска docker-compose --build
оба койнтейнера значатся как запущенные, в обоих могу зайти. DBeaver коннектится с базой useraccdb, которая пустая. Но по адресу localhost:9000
- ошибка. Захожу в контейнер с джагной и пытаюсь сделать миграции - получается ошибка, которая указана выше. Не знаю уже что делать. По всем мануалам правильно собрал контейнеры, но почему они не хотят взаимодействовать? Пытался добавлять в Docker-compose
в бд
command: [--default-authentication-plugin=mysql_native_password]
Не помогло.
UPD Решил установить более раннюю версию бд
db:
image: mysql:5.7
Ошибки в зависимости от того, как подключаюсь:
1) в сеттингсах localhost
django.db.utils.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")
2) в сеттингсах 127.0.0.1
MySQLdb._exceptions.OperationalError: (2002, "Can't connect to MySQL server on '127.0.0.1' (115)")
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
В БД хранятся котировки валютЭти данные часто используются php-скриптами, причем за один запрос пользователя читается более одной записи...
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском