将AWS角色提供的凭证传递到Docker容器

我正在尝试运行安装了aws cli和cfdeployment的docker-container.我正在尝试在本地计算机上运行docker容器.我在〜/ .aws / config文件中本地设置了一个AWS配置文件

[profile dev]
role_arn = arn:aws:iam::****:role/test-deploy-role
source_profile = default

我需要使用此角色在docker容器内提供的临时凭据来执行CF模板.

这是我的Dockerfile

FROM docker:17.04.0-ce

RUN apk update && apk add python && apk add py-pip && apk add bash

RUN pip install pip --upgrade && pip install setuptools --upgrade && pip install awscli && pip install cfdeployment==0.2.3 --extra-index-url https://dn2h7gel4xith.cloudfront.net

ADD test.sh /root/test.sh

VOLUME /tmp/work
VOLUME /root/.aws


ENTRYPOINT ["/root/test.sh", "cfdeployment"]
CMD ["--version"]
最佳答案
运行容器时挂载/root/.aws文件夹:

docker run -v /root/.aws:/root/.aws ...

这将使主机和容器共享同一文件夹.

转载注明原文:将AWS角色提供的凭证传递到Docker容器 - 代码日志