Я пытаюсь подключиться к базе данных mysql с помощью программы на python. При локальном запуске это работает.
Но при докеризации созданного мною приложения один контейнер предназначен для кода Python, а другой - для базы данных mysql. При запуске таким способом он не может подключиться.
Python_code:
db.bind(provider='mysql', user='docker_root', password='password', host='db', database=database, port = 3306)
докер-Compose:
version: "3"
services:
app:
image: app:latest
links:
- db
ports:
- "8001:8081"
environment:
- DB_HOST= db
db:
image: mysql:5.7.26
restart: always
environment:
MYSQL_DATABASE: 'my_db'
MYSQL_USER: 'docker_root'
MYSQL_PASSWORD: 'password'
MYSQL_ROOT_PASSWORD: 'password'
ports:
- "3306:3306"
volumes:
- ./DB_config/:/etc/mysql/mysql.conf.d
И в docker-compose с ошибкой не получается:
pony.orm.dbapiprovider.OperationalError: (2003, «Не удается подключиться к
Сервер MySQL на 'db' ([Errno 111] Соединение отказано) ")
Куда я иду не так? Пожалуйста, сообщите!