gpt4 book ai didi

amazon-web-services - 如何在没有提示的情况下在没有交互的情况下自动在 Amazon AWS EC2 上运行 aws configure?

转载 作者:行者123 更新时间:2023-12-04 03:19:05 24 4
gpt4 key购买 nike

我正在尝试设置 Amazon AWS EC2 实例以与 s3 对话。基本命令是

aws configure

然后按照提示输入
AWS Access Key ID [None]: my-20-digit-id
AWS Secret Access Key [None]: my-40-digit-secret-key
Default region name [None]: us-east-1
Default output format [None]: text

但是,我真正想要的是拥有命令
aws configure

自动无交互,即没有提示并等待输入

我知道有文件在
~.aws/credentials
~.aws/config

我把那 4 个键=值对放在哪里。 “凭据”文件看起来像
[default]
aws_secret_access_key = my-40-digit-secret-key
aws_access_key_id = my-20-digit-id

而“配置”文件看起来像
[default]
region = us-east-1
output = text

但是,使用 ~/.aws/中的这些文件,我进入 ~/.aws/,并在命令行中键入并输入命令
aws configure

我仍然收到了询问我的提示
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]:
Default output format [None]:

如果我没有在提示符下输入有效值,我将无法连接到 s3,例如通过命令
aws s3 ls s3://mybucket

我将帮助转向了亚马逊 aws 文档页面。在此页面上,它提到了此选项

“命令行选项 - 区域、输出格式和配置文件可以指定为命令选项以覆盖默认设置。”

作为 aws configure 的第一个选项

https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html

但是,它没有提到如何使用命令行选项。我试过这样的事情
aws configure --region us-east-1

但我还是有
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]:
Default output format [None]:

就像我没有“--region us-east-1”选项一样

如果我尝试
aws configure --aws_access_key_id my-20-digit-id --aws_secret_access_key my-40-digit-secret-key --region us-east-1

我明白了
usage: aws [options] <command> <subcommand> [parameters]
aws: error: argument subcommand: Invalid choice, valid choices are:

我如何运行命令
aws configure

自动,无提示,无交互。

请帮忙! TIA

编辑和回复 helloV,因为主要帖子中的格式比评论清晰得多。
我尝试了提到的 helloV 命令,但出现错误
aws configure set aws_access_key_id my-20-digit-id
usage: aws [options] <command> <subcommand> [parameters]
aws: error: argument subcommand: Invalid choice, valid choices are:

不过谢谢。
继续“aws 配置集”
在我已经将连接设置为 s3 的另一个 EC2 实例上,我输入
aws configure set region us-east-1

运行并返回命令提示符“>”
aws configure set aws_access_key_id my-20-digit-id

运行并返回命令提示符“>”
aws configure set aws_secret_access_key my-40-digit-secret-key

运行并返回命令提示符“>”
aws configure

运行但带有提示并等待交互
AWS Access Key ID [****************ABCD]:
AWS Secret Access Key [****************1234]:
Default region name [us-east-1]:
Default output format [text]:

你好:
这是我的屏幕看起来像
ubuntu@ip-11111:~/.aws$ more config
[default]
region = us-east-1
output = text
ubuntu@ip-11111:~/.aws$ more credentials
[default]
aws_secret_access_key = my-40-digit-secret-key
aws_access_key_id = my-20-digit-id
ubuntu@ip-11111:~/.aws$ aws s3 ls s3://

我懂了
Unable to locate credentials. You can configure credentials by running "aws configure".

在这之后,我跑
aws configure list
Name Value Type Location
---- ----- ---- --------
profile <not set> None None
access_key <not set> None None
secret_key <not set> None None
region us-east-1 config_file ~/.aws/config

看起来它没有检查 ~/.aws/credentials 文件,但 ~/.aws/config 文件在列表中。

最佳答案

我想通了,终于。使用导出如

export AWS_ACCESS_KEY_ID=my-20-digit-id
export AWS_SECRET_ACCESS_KEY=my-40-digit-secret-key
export AWS_DEFAULT_REGION=us-east-1

然后运行
aws s3 ls s3://

会工作。不要像其他人提到的那样运行“aws configure”。

谢谢你们。

关于amazon-web-services - 如何在没有提示的情况下在没有交互的情况下自动在 Amazon AWS EC2 上运行 aws configure?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48696054/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com