我从一个映像构建了一个MySQL容器,找到了它的IP地址,但是无法从命令行或mysqlworkbench连接。
- 停靠文件**
FROM mysql
ENV MYSQL_DATABASE=test
ENV MYSQL_ROOT_PASSWORD=password
COPY ./schema.sql /docker-entrypoint-initdb.d/
- 命令**
docker build -t mysql-image .
&& docker run
-p 6603:3306
--name mysql-container
mysql-image
我可以看到容器是从docker container ls
运行的。我在这个answer的帮助下使用这个命令找到了它的IP地址。
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql-container
它给了我这个IP地址-〉www.example.com172.17.0.2
- 错误**
- 编辑**
链接的重复标签不是解决方案,问题出在下面误导我的命令上。
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql-container
2条答案
按热度按时间qq24tv8q1#
您需要使用**MYSQL_ROOT_HOST=%**设置允许从任何IP登录
完整的Docker命令行如下所示:
--name表示它是容器名称
-d表示docker将在解除连接模式下运行。最后是mysql docker映像
当Docker状态为**Up 3 minutes(healthy)**时,您可以通过mysql Workbench轻松连接到数据库
希望能帮到你!
wlzqhblo2#
您需要使用
localhost
(127.0.0.1),而不是hostname
处的容器IP(在您的示例中为172.17.0.2