Docker构建过程中的AWS凭据

前端之家收集整理的这篇文章主要介绍了Docker构建过程中的AWS凭据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

作为构建我的docker容器的过程的一部分,我需要从s3存储桶中提取一些文件,但是我一直都会遇到致命的错误:即使现在我将凭据设置为ENV vars也无法找到凭据(尽管我想知道一个更好的方法来做到这一点)

因此,在构建容器时,我会运行

docker build -t my-container --build-arg AWS_DEFAULT_REGION="region" --build-arg AWS_ACCESS_KEY="key" --build-arg AWS_SECRET_ACCESS_KEY="key" . --squash

在我的Dockerfile中我有

ARG AWS_DEFAULT_REGION
ENV AWS_DEFAULT_REGION=$AWS_DEFAULT_REGION

ARG AWS_ACCESS_KEY
ENV AWS_ACCESS_KEY=$AWS_ACCESS_KEY

ARG AWS_SECRET_ACCESS_KEY
ENV AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY

RUN /bin/bash -l -c "aws s3 cp s3://path/to/folder/ /my/folder --recursive"

有谁知道我怎么解决这个问题(我知道有一个选项可以添加配置文件,但这似乎是一个不必要的额外步骤,因为我应该能够从ENV读取).

最佳答案
环境变量的名称是AWS_ACCESS_KEY_ID vs AWS_ACCESS_KEY

您可以查看amazon doc的完整列表

The following variables are supported by the AWS CLI

AWS_ACCESS_KEY_ID – AWS access key.

AWS_SECRET_ACCESS_KEY – AWS secret key. Access and secret key
variables override credentials stored in credential and config files.

AWS_SESSION_TOKEN – session token. A session token is only required if
you are using temporary security credentials.

AWS_DEFAULT_REGION – AWS region. This variable overrides the default
region of the in-use profile,if set.

AWS_DEFAULT_PROFILE – name of the CLI profile to use. This can be the
name of a profile stored in a credential or config file,or default to
use the default profile.

AWS_CONFIG_FILE – path to a CLI config file.

猜你在找的Docker相关文章