环境:
centos8.0
docker19.03.7
docker-compose1.25.5
mysql5.7
端口映射 13306:3306
防火墙 firewall
现象:
mysql运行在docker容器

firewall-cmd —reload
通过Navicat远程连接仍然失败,查了无数博客,结合自己理解,需先关闭防火墙,重启docker(-compose)镜像,然后再打开防火墙,于是乎
sudo systemctl stop firewalld
docker-compose restart

报错,如下图:

报错原因及解释,参考https://blog.csdn.net/whatday/article/details/
完整的步骤:
sudo systemctl stop firewalld
sudo systemctl restart docker
docker-compose restart(已关闭的,直接用start命令)
sudo systemctl start firewalld
这样防火墙firewalld开启状态下,mysql也能远程访问了

另外我一个习惯:
我一般不直接用docker命令启动镜像,都是通过docker-compose.yml这种方式,这种方式将各个参数都放到配置文件里,维护比较方便

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/59319.html