该存储桶可公开访问,但具有ACL,仅可访问授权用户。我可以从本地计算机访问S3存储桶,因为我已为其配置了AWS CLI。
我是否可以通过某种方式从我的计算机上运行的docker实例访问存储桶,而无需在docker镜像上安装和配置AWS CLI?
修改
对于那些不了解S3如何工作并且正在低估问题的人,可以公开访问存储桶 - 如果顶级存储桶URI被命中,则列出其所有内容;但由于ACL限制,这些项目都不可访问。我知道这可能是一个糟糕的设计,但这不是这个问题的重点
我可以访问我机器上的所有项目,因为我已配置AWS CLI以允许访问应用程序AWS SDK。但是,我无法从Docker容器访问它们
如果没有在docker镜像中设置AWS CLI,这似乎是不可能的,因为SDK会查找已配置的AWS CLI,或尝试点击内部IP 169.254.169.254 以获取元数据数据访问,在EC2实例的情况下成功。 不,EC2实例不会根据以下答案设置CLI。如果您的实例可以访问受保护的S3存储桶,那么这是一个IAM策略。
答案 0 :(得分:-1)
所有aws ec2实例都预先安装了aws cli。如果您的docker容器是使用ec2实例构建的,则根本不必安装cli。