【发布时间】:2020-04-12 03:59:00
【问题描述】:
我正在尝试从 Flask 应用程序连接到 dockerized 并存储在 EC2 中的 MySQL 数据库。为了手动访问数据库,您必须使用 pem 文件 ssh 进入,然后执行到 docker 映像中以访问数据库。我将如何从应用程序本身连接到这个。我尝试过同时使用 sql alchemy 或 mysql,但如果我尝试使用 ec2 实例的 ip 地址,它就会超时。我的猜测是我可能需要在 Flask 应用程序中使用 Dockerfile 做一些事情?我对 Flask 和 Docker 还很陌生,所以我不确定最好的做法是什么,也无法在网上找到很多信息。
【问题讨论】:
-
您能否详细说明有关 Docker 容器的信息? 3306端口暴露了吗?
-
3306 未暴露。我相信 3000 是,这就是应用程序的实际节点后端所在
-
实际上,在运行 docker-compose 时,也会暴露 3306。我没有编写后端或任何 docker 文件:p
-
您需要从同一个服务器还是从某个远程连接到数据库?
-
不确定我是否理解你的问题,所以我可以更深入地了解我正在做什么,希望能回答你的问题。应用程序的后端和数据库正在 docker 化并托管在 ec2 上。我正在编写一个管理面板来对数据库中的信息进行一些数据分析。这是在 Flask 中完成的,因此为什么我需要 Flask 应用程序来访问数据库并提取有用的分析。我能够使用在 docker-compose 中建立的本地数据库版本进行测试,它运行良好,但我不确定如何做到这一点
标签: mysql docker flask amazon-ec2