【问题标题】:Passing IAM Role to Docker container for Terraform将 IAM 角色传递给 Terraform 的 Docker 容器
【发布时间】:2020-12-01 00:04:49
【问题描述】:

我有一个使用 GitLab Runner 运行 Docker 的 EC2 实例,它将为作业创建容器。

这些容器通常是从 gitlab-terraform 注册表镜像构建的。

我正在使用 Terraform 容器通过 GitLab Runner (GitLab CI/CD) 创建 EC2 基础架构。计划时,每次我收到一条错误消息,说 Terraform 无法访问我的凭据,尽管我将角色附加到 EC2 实例。

以前有人遇到过这个问题吗?如果是,您是如何解决的

【问题讨论】:

  • 您是否只是在没有 ECS 或 Kubernetes 的 EC2 实例上直接在 Docker 容器中运行 Terraform?如果是这样,您仍然应该可以访问提供凭证的实例元数据端点,您可以通过执行到容器中并尝试 curl 来测试这些凭证。您还应该通过在实例上而不是在容器中本地运行 AWS CLI 来检查实例配置文件是否附加了正确的权限。

标签: docker amazon-ec2 terraform amazon-iam gitlab-ci-runner


【解决方案1】:

您是否使用存储库的特定 Runner 运行 Gitlab CI?如果是这样,则特定运行器的 EC2 必须具有 IAM 角色以执行 terraform 脚本正在执行的任务。 如果您使用共享 Runner,则过程会有所不同

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-10-20
    • 2016-11-01
    • 2014-11-12
    • 2020-08-06
    • 2022-01-26
    • 1970-01-01
    • 2019-12-13
    • 2018-11-10
    相关资源
    最近更新 更多