Не удается подключиться к MySQL внутри контейнера Docker с SequelPro - PullRequest
0 голосов
/ 30 сентября 2018

Как я могу подключиться к MySQL внутри моего док-контейнера, который размещен локально на моем Mac?Я пытаюсь подключиться через SequelPro и даже не могу заставить тестовое соединение работать.

Вот моя команда Docker:

docker run -it --name rodneys_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=demo mysql

Я могу подключиться через командную строку:

docker exec -it rodneys_mysql mysql -uroot -p

Я знаю, как получить IP-адрес контейнера Docker:

docker inspect <container id> | grep "IPAddress"

Но я не могу подключиться через SequelPro с моего хост-компьютера.

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Решено с помощью 127.0.0.1 вместо localhost, потому что localhost будет означать сам контейнер Docker.Также не забудьте предоставить пользователю привилегию для подключения:

grant all privileges on *.* to 'root'@'172.17.0.1' identified by 'password';

Или для всех хостов:

grant all privileges on *.* to 'root'@'%' identified by 'password';
0 голосов
/ 10 октября 2018

Вы перенаправляете локальный порт 3306 вашей машины на порт контейнера 3306. Вы должны иметь возможность использовать localhost в SequelPro.

...