此命令按预期工作:
# docker run --rm -it public.ecr.aws/aws-cli/aws-cli:2.9.1 --version
aws-cli/2.9.1 Python/3.9.11 Linux/5.15.0-1026-aws docker/aarch64.amzn.2 prompt/off
但这并不意味着:
# docker run --rm -it public.ecr.aws/aws-cli/aws-cli:2.9.1 s3 ls
Unable to locate credentials. You can configure credentials by running "aws configure".
我也无法配置AWS凭据...
# docker run -it public.ecr.aws/aws-cli/aws-cli:2.9.1 aws configure
我不确定如何使用docker进行aws命令。
更新:
这似乎符合预期:
$ docker run --rm -it -v ~/.aws:/root/.aws public.ecr.aws/aws-cli/aws-cli:2.9.1 s3 ls
但是在我的例子中,我没有本地保存的凭证,在这种情况下不推荐使用Docker容器吗?
1条答案
按热度按时间2hh7jdfx1#
此命令...
...不起作用,因为它既不能访问
$HOME/.aws
中的AWS配置,也不能访问$AWS_ACCESS_KEY_ID
和$AWS_SECRET_ACCESS_KEY
等环境变量。如果您在环境变量中有凭据,则可以使用
docker run
的-e
选项将它们公开给容器:或者,您可以公开您的
~/.aws
目录,如您在最近编辑的答案中所示: