mysql - elastic beanstalk docker app无法连接到mysql

标签 mysql amazon-web-services docker amazon-elastic-beanstalk

我有一个使用 Docker 运行小型 Laravel PHP API 的 ElasticBeanstalk 应用程序。

应用程序在 ElasticBeanstalk 中运行时无法连接到 MySQL。

MySQL 数据库是一个公开可用的 AWS RDS 实例。

我已经在本地运行我的 Docker 容器,应用程序可以正常连接。

当我部署到 ElasticBeanstalk 时,应用程序无法连接...

任何人都可以指出一个方向来帮助调试这个吗?

解决方案

对于任何偶然发现此问题的人:

解决方案是为 EC2 实例和 RDS 数据库创建一个新的安全组。两个安全组通过端口 3306 为实例和数据库开放访问。

我还确保 EC2 实例在每个子网和与我的数据库相同的 VPC 中可用。

摘自以下答案以及我的一位 SysOps friend 的一些帮助。

最佳答案

您可能需要检查附加到 Elastic Beanstalk 的 EC2 安全组规则以允许端口 3306 上的 TCP 用于 MYSQL 类型。

关于mysql - elastic beanstalk docker app无法连接到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46826166/

相关文章:

amazon-web-services - 需要释放所有地区所有未使用boto3关联的弹性IP

apache-spark - 来自Docker的Ne​​o4j和Spark的ServiceUnavailableException

python - 如何在cloud9.io上的工作区(容器)之间分配应用程序工作负载?

php - Laravel:左连接 sql 错误

amazon-web-services - 适用于任何用户的 AWS::IAM::策略

MySQL 从另一个存储过程调用存储过程

amazon-web-services - DynamoDB - 使用 PITR 恢复由 CloudFormation 管理的 DynamoDB 表

node.js - 在Dockerfile中进行npm构建时不会生成'dist'文件夹

php - 如果 $_POST null 表单输入 codeigniter

MySQL:在结果中将列放在一起?