Използване на docker-compose up
Тъй като публикувахте порт 3306
на вашия docker хост , от самия хост ще се свържете с 127.0.0.1:3306
.
Използване на docker-compose run
В този случай секцията за съпоставяне на портове на docker-compose.yml
файл се игнорира. За да имате предвид секцията за картографиране на портове, трябва да добавите --service-ports
опция:
docker-compose run --service-ports db
Допълнителна бележка
Внимавайте, че по подразбиране mysql клиентът се опитва да се свърже чрез unix сокет, когато му кажете да се свърже с localhost
. Затова използвайте 127.0.0.1
а не localhost
:
$ mysql -h 127.0.0.1 -P 3306 -u root
Добре дошли в MySQL монитора. Командите завършват с; или \g.Идентификаторът на връзката ви с MySQL е версия на 1Server:5.6.26 MySQL Community Server (GPL)
Авторско право (c) 2000, 2015, Oracle и/или неговите филиали. Всички права запазени.
Oracle е регистрирана търговска марка на Oracle Corporation и/или нейните филиали. Други имена може да са търговски марки на съответните им собственици.
Въведете 'help;' или '\h' за помощ. Въведете '\c', за да изчистите текущия израз за въвеждане.
mysql>
$ mysql -h localhost -P 3306 -u root
ГРЕШКА 2002 (HY000):Не може да се свърже с локален MySQL сървър чрез сокет '/var/run/mysqld/mysqld.sock' (2)