【问题标题】:Connect to AWS DocumentDB from within a docker container从 docker 容器内连接到 AWS DocumentDB
【发布时间】:2022-06-27 13:43:06
【问题描述】:

B"H

我在 EC2 上有一个 docker 容器尝试连接到 DocumentDB。 DocuementDB 需要在 vpc 网络中。 当尝试以无主机模式连接到 DocumentDB 时,连接失败,但是当我(破解并)安装容器以使用主机网络模式时,它确实可以工作。但是对于简单的部署和复制我的容器,这是一个问题。

知道如何从托管在 EC2 上的 docker 连接到 DocumentDB(不使用 ssh 隧道)吗?

【问题讨论】:

  • 在没有更多信息的情况下帮助您并不容易。但是您的 docker 容器上是否至少发布了正确的端口?
  • 对于 VPC 约束,似乎需要代表 EC2 机器而不是容器发出 http 请求。但这不是一种可扩展的方法
  • 我想 ec2-user 有允许这样做的 IAM 策略,而您在容器内使用的任何用户都没有。我玩过这些东西,发现使用 ecs fargate 更实用。在那里您确保 ecs_task_role 具有正确的权限,然后您可以执行此操作。至少这是我从 springboot 服务连接到 RDS (mysql) 的方式。
  • @Chai DocumentDB 拥有独特的权限,无法在 it amazon VPC 之外访问。
  • 是的,如果您将 Db 放在 vpc 内的私有子网中,那么您必须从那里连接。所以你的容器也可以在同一个私有子网/vpc中,然后它应该能够连接。例如,您必须有一个负载均衡器才能从外部连接并将流量转发到 ec2 实例。

标签: docker aws-documentdb


【解决方案1】:

如果我理解正确,您是在非网络模式下运行容器。 None 表示您要禁用容器的所有网络。最常用的模式是桥接或主机。

您还可以参考下面的帖子,其中讨论了如何在 ECS 中运行 docker 容器并连接到 documentdb。 https://aws.amazon.com/blogs/database/deploy-a-containerized-application-with-amazon-ecs-and-connect-to-amazon-documentdb-securely/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-20
    • 2019-11-08
    • 2020-02-08
    • 2020-11-20
    • 1970-01-01
    • 2018-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多