【问题标题】:AWS how to handle programatic credentilas when building a docker containerAWS在构建docker容器时如何处理编程凭证
【发布时间】:2021-08-06 17:37:08
【问题描述】:

我有一个 .net 核心应用程序,我在其中使用 S3、RDS 和 Dynamo 等服务。最初,客户端的每个实例都是直接使用 Access_KEY 和 Secret_Access_Key 初始化的,所以基本上这两个都存储在配置文件中。最近,我们开始了使用 Terraform 自动创建 AWS 基础设施的流程,我们正在尝试从托管容器(Fargate 和 Amplify)迁移到 ECS,并且我们还从使用普通密钥迁移到使用配置文件。

在 Windows 中,我安装了 AWS CLI 来配置配置文件,并在我的下

用户/{myUser/.aws

创建了以下两个文件:配置和凭据。

但是在 linux 上使用 docker 时如何配置配置文件我不完全知道我应该遵循哪些步骤。创建 CI-CD 管道时,在提交并成功构建 docker 映像后,应弹出一个新容器替换旧容器。我应该在运行应用程序的 docker 容器中配置 aws 配置文件吗?每次构建新容器并替换旧容器时,我是否应该生成一组新密钥?这种方法听起来的方式,我不相信这是这样做的方式,但不知道如何实际做到这一点。

【问题讨论】:

    标签: amazon-web-services docker terraform amazon-ecs


    【解决方案1】:

    在 AWS 中运行时不应使用配置文件。配置文件非常适合在本地运行代码,但是当您的代码部署在 ECS 上时,它应该使用 task IAM role

    您可以在 Terraform 中通过创建 IAM 角色来管理它,然后将角色分配给 ECS 任务定义中的任务。

    【讨论】:

    • 好的,这会影响代码的编写方式吗?
    • 在继续之前,您应该真正阅读文档中的this page。在这一点上,我只是在这里向您重复该页面的部分内容。
    猜你喜欢
    • 2017-11-02
    • 2018-09-29
    • 1970-01-01
    • 2016-09-29
    • 1970-01-01
    • 2017-11-30
    • 2014-12-20
    • 2014-11-12
    • 2021-08-18
    相关资源
    最近更新 更多