【发布时间】:2021-02-28 15:47:58
【问题描述】:
我在 docker 容器中有一个 mysql,它在服务器上运行。 我可以在容器内正常运行它 使用
mysql -u root -h localhost --port=3306 -p
我已将容器 3306 映射到主机 33069 端口。
netstat -tnlp | grep :33069
在服务器上运行的上述命令显示以下结果
tcp6 0 0 :::33069 :::* LISTEN 120562/docker-proxy
从中可以看出mysql不仅适用于localhost。
但是,当我尝试使用命令从本地计算机连接到 mysql 时
mysql -u root -h myAddress.com --port=33069 -p
我得到了错误
Can't connect to MySQL server on ...
超时后。
我错过了什么?
【问题讨论】:
-
您的主机上的防火墙中是否打开了 33069 端口?
-
sudo ufw status verbose在服务器上导致我inactive。据我了解,防火墙应该没有任何问题。 -
vodolaz095 我尝试使用yougetsignal.com/tools/open-ports这个链接检查端口可访问性,它显示端口已关闭。
-
我不能说我理解 ubuntu(我更喜欢 Centos8 或 Fedora),但似乎端口转发被禁用,因为物理网卡的伪装被禁用,或者防火墙服务不起作用,所以端口没有打开.尝试查找在 Ubuntu 中如何打开端口