将IAM角色传递给Terraform的Docker容器

问题描述

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

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

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

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

解决方法

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