我正试图通过SSH隧道从工作台访问我的mysql数据库,mysql在一个容器中(使用docker compose(。
以下是我在docker compose:中的mysql容器配置
mysql:
image: mysql:5.7
container_name: mysql
expose:
- 3306
ports:
- '3306:3306'
volumes:
- ./mysql:/var/lib/mysql
environment:
- "MYSQL_ROOT_PASSWORD=#####"
- "MYSQL_DATABASE=#####"
- "MYSQL_USER=#####"
- "MYSQL_PASSWORD=#####"
restart: always
但我得到了一个";未能连接到MySQL";错误,就像我的端口没有很好地从SSH重新转发到MySQL容器一样(因此,没有击中好的门(。
请注意,我不允许从mysql进行远程访问,因为我只想让SSH/localhost访问成为可能。
你知道吗?感谢
您已经暴露了端口3306,因此您应该能够使用以下命令从系统访问它-
mysql -u <mysql_user> -p -h localhost -p 3306
如果不可访问,请尝试以交互模式登录mysql容器,是否可以在docker会话中访问它。