Docker-toolbox mariadb容器

问题描述 投票:1回答:1

我在Windows 8.1中使用docker-toolbox,我创建了一个名为default的docker-machine(虚拟盒),并在其中运行mariadb容器。

我的问题是,我无法通过我的Windows系统上的HeidiSQL连接到所述数据库系统。

在docker容器内,我可以使用mysql命令并执行查询。

到目前为止我所做的步骤:

  1. 在虚拟框内添加端口转发: https://imgur.com/a/GcfcKgG
  2. 将链转发防火墙规则更改为接受 证明:https://imgur.com/a/yxIBNvN
  3. 尝试通过heidisql连接到Windows中的数据库系统,使用ip“localhost”,“127.0.0.1”和ip我通过“docker-machine ip default”
  4. 通过“winpty docker exec -it mariadb bash”连接到docker容器以检查防火墙问题,但一切都在那里接受。
  5. 确保在/etc/mysql/my.cnf中注释掉“#bind = 127.0.01”这一行

我真的不知道该怎么做才能找到问题。 Mariadb记录说它已准备好连接,但我似乎无法达到它。

知道如何追踪这个问题吗?

mariadb virtualbox docker-toolbox
1个回答
1
投票

我解决了问题是我运行容器的命令缺少-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
© www.soinside.com 2019 - 2024. All rights reserved.