【发布时间】:2017-06-30 11:07:11
【问题描述】:
当我尝试通过 SSH 隧道连接到主机 Mashine (vServer),然后尝试通过内部 docker Container-IP 连接时,我无法连接到 MySQL。
这是我的 docker-compose 文件。
version: '2'
services:
mysql:
build: ./mysql
environment:
MYSQL_ROOT_PASSWORD: test
volumes:
- ./db:/var/lib/mysql
我找到的唯一解决方案是将 mysql 容器的 MySQL-Port 转发到 Host-Mashine。
version: '2'
services:
mysql:
build: ./mysql
environment:
MYSQL_ROOT_PASSWORD: test
volumes:
- ./db:/var/lib/mysql
ports:
- 3306:3306
然后我可以通过主机 IP 连接到 MySQL,但这没有 SSH,它直接通过 TCP 和端口。 将 MySQL 服务引入 Internet 对我来说是不行的。
可以在这里找到原因https://security.stackexchange.com/questions/63881/is-it-not-safe-to-open-mysqls-port-to-the-internet 为什么将 mysql 端口接入互联网不是一个好习惯。
那么使用 SSH 连接到我的 docker mysql 容器但保持 mysql 端口关闭的好习惯是什么?
【问题讨论】:
标签: mysql docker ssh docker-compose