Docker-toolbox mariadb контейнер - PullRequest
       33

Docker-toolbox mariadb контейнер

1 голос
/ 26 апреля 2019

Я использую docker-toolbox в Windows 8.1, и я создал docker-машину (виртуальный ящик) с именем default и запускаю в ней контейнер mariadb.

Моя проблема в том, что я не могу подключиться к указанной системе базы данных через HeidiSQL в моей системе Windows.

Внутри docker-контейнера я могу использовать команду mysql и выполнять запросы.

Шаги, которые я сделал до сих пор:

  1. Добавить переадресацию портов внутри виртуальной коробки:
    https://imgur.com/a/GcfcKgG

  2. изменить правило брандмауэра перенаправления цепочки на принятие
    Доказать: https://imgur.com/a/yxIBNvN

  3. Попытка подключения к системе баз данных в Windows через heidisql с ip "localhost", "127.0.0.1" и ip, который я получаю через "docker-machine ip default"

  4. Соединен с докером-контейнером через "winpty docker exec -it mariadb bash" для проверки на наличие проблем с брандмауэром, но там все принималось.

  5. Убедитесь, что строка "#bind = 127.0.01" закомментирована внутри /etc/mysql/my.cnf

Я действительно не знаю, что делать, чтобы найти проблему. Журналы Mariadb просто говорят, что он готов к соединениям, но мне кажется, что я не могу его достать.

Есть идеи, как я могу отследить проблему?

1 Ответ

1 голос
/ 27 апреля 2019

Я решил это. Проблема заключалась в том, что в моей команде для запуска контейнера отсутствовала опция -p, из-за чего мой контейнер не привязывался к нужному порту (?).

Рабочая команда:

docker run --name mdb -e MYSQL_ROOT_PASSWORD=admin_password_here -p 3306:3306 -d mariadb/server:10.1

Кроме того, я заметил, что изменение параметров переадресации портов внутри вашего VirtualBox требует перезагрузки указанной машины:

docker-machine restart default

Наконец, убедитесь, что строка адреса привязки закомментирована. Я пытался привязать его к разным адресам, но не оставляя закомментированных определенно работает:

#bind =127.0.0.1
...