我需要与docker和AWS进行一些合作。
当我尝试跑步时
$ docker run --rm -e AWS_ACCESS_KEY_ID = $ AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY = $ AWS_SECRET_ACCESS_KEY grycap / aws-cli ec2 describe-instances
我得到:
调用DescribeInstances操作时发生错误(AuthFailure):授权标头或参数的格式不正确。
但是我的$ aws配置已经完成;当我跑步
$aws configure list
我得到:
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key ****************3Y7Q shared-credentials-file
secret_key ****************yCIY shared-credentials-file
region ap-southeast-2 config-file ~/.aws/config
编辑: 当我尝试
回显$ AWS_ACCESS_KEY_ID
响应为空行...
答案 0 :(得分:1)
这是完整的解决方案。
export AWS_ACCESS_KEY_ID=<Your-Actual-key>
export AWS_SECRET_ACCESS_KEY=<Your-Actual-key>
export AWS_DEFAULT_REGION=<Your-Actual-Region>
然后运行以下命令:
docker run --rm -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY grycap/aws-cli ec2 describe-instances
或者,您可以将所有这三个都放在~/.bash_profile
AWS_ACCESS_KEY_ID=<Your-Actual-key>; export AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY=<Your-Actual-key> ; export AWS_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION=<Your-Actual-Region> ;export AWS_DEFAULT_REGION
source ~/.bash_profile
,然后运行命令:
docker run --rm -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY grycap/aws-cli ec2 describe-instances
希望这会有所帮助。 谢谢!