如何连接远程 docker 容器 mysql 服务器

how to connect remote docker container mysql server

有什么方法可以连接远程 docker 容器 mysql 服务器吗?

我正在安装 magento 网络应用程序,现在我有一种情况需要 use/point 现有的 远程 docker 容器数据库。我已经进行端口转发以便从远程计算机访问数据库,但它不起作用。

docker run -it -d -p 3002:80 -h tm.gworks.mobi -v /var/www/public --privileged --name database magedev

出于在远程机器上的测试目的,我在 mysql 控制台中尝试了 mysql -u root -h 192.168.1.21:3002 -p,但它没有连接,它抛出错误 ERROR 2005 (HY000): Unknown MySQL server host '192.168.1.21:3002' (-2)

Docker 运行命令应该是,

docker run -it -d -p 3002:3306 -h tm.gworks.mobi -v /var/www/public --privileged --name database magedev

默认 mysql 端口是 3306 但我监听端口 80 这是我的 nginx 端口所以它不能允许。

mysql -u root -h 192.168.1.21 -P 3002 -p

现在一切正常