docker这样配置mysql数据库的映射是连不上的,坑!!!

因为我docker中已经安装了一个mysql了如图:

在这里插入图片描述

但因为版本是最新的latest,而我现在要装一个5.5版本的mysql.

开始觉得挺简单,重新开一个容器就可以了,但开启后,却怎么也连不上。

步骤如下:

重新开一个容器,映射端口为3307:3307

docker run -itd --name mysql02 -p 3307:3307 -e MYSQL_ROOT_PASSWORD=admin123 mysql:5.5

在这里插入图片描述

生成后,测试连接,将端口改为3307,却怎么也连接不上。

在这里插入图片描述

后面我删除,又换了个端口配置:

docker run -itd --name mysql02 -p 3306:3307 -e MYSQL_ROOT_PASSWORD=admin123 mysql:5.5

在这里插入图片描述

这样配置后,报错,说端口已经被占用。

根本不能运行。

最终,我又换一种方式:

docker run -itd --name mysql02 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=admin123 mysql:5.5

在这里插入图片描述

在这里插入图片描述

成功连接,问题解决!!!

总结:镜像内部端口可以重复,而镜像外部端口不能重

如已经有了3306:3306端口映射,可以3307:3306

不可以3307:3307,这样会访问不到,也不可以3306:3307,这样会冲突,后面这些都是错误的,上面有图有真相,亲身经历,别再入坑了

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐