Amazon dynamodb 如何将aws cli与本地dynamoDB一起使用?

Amazon dynamodb 如何将aws cli与本地dynamoDB一起使用?,amazon-dynamodb,Amazon Dynamodb,我正在努力使用aws cli并在本地机器上运行dynamoDB,请任何人提供帮助 具有以下配置的DynamoDB本地: Port: 8000 InMemory: false DbPath: null SharedDb: true shouldDelayTransientStatuses: false CorsParams: * 感谢您的帮助。来自: 将AWS CLI与可下载的DynamoDB一起使用 AWS CLI可以与计算机上运行的DynamoDB交互。要启用此功能,请将--

我正在努力使用aws cli并在本地机器上运行dynamoDB,请任何人提供帮助

具有以下配置的DynamoDB本地:

Port:   8000
InMemory:   false
DbPath: null
SharedDb:   true
shouldDelayTransientStatuses:   false
CorsParams: *
感谢您的帮助。

来自:

将AWS CLI与可下载的DynamoDB一起使用

AWS CLI可以与计算机上运行的DynamoDB交互。要启用此功能,请将--endpoint url参数添加到每个命令:

--端点url

以下是一个示例,使用AWS CLI列出本地数据库中的表:

注意:如果您尚未配置任何AWS凭据,则上述命令可能会失败,出现
您必须指定区域
无法定位凭据
错误。对于本地连接,任何凭据都可以工作,因此可以使用任意值,例如:

AWS_ACCESS_KEY_ID=X AWS_SECRET_ACCESS_KEY=X aws dynamodb list-tables --endpoint-url http://localhost:8000 --region x
使用链接配置AWS CLI

使用默认区域名称作为您选择下载本地实例的名称

如下所示:默认区域名称[None]:us-west-2

找到有用的链接这对我很有用:
AWS\u DEFAULT\u REGION=REGION AWS\u ACCESS\u KEY\ID=ID AWS\u SECRET\u ACCESS\u KEY=KEY AWS dynamodb列表表--端点urlhttp://localhost:8000


仅指定
端点url是不够的。

只需运行
aws configure

aws configure
AWS Access Key ID [None]: "fakeMyKeyId"
AWS Secret Access Key [None]: "fakeSecretAccessKey"
Default region name [None]: x
Default output format [None]:
在那之后

aws dynamodb list-tables --endpoint-url http://localhost:8000

{
   "TableNames": []
}

其他选择:创建“myprofile”配置文件

aws configure --profile myprofile
AWS Access Key ID [None]: "fakeMyKeyId"
AWS Secret Access Key [None]: "fakeSecretAccessKey"
Default region name [None]: x
Default output format [None]:
然后


在执行并收到以下命令后尝试该命令,
您必须指定一个区域。您也可以通过运行“aws配置”来配置您的区域。
(Am使用8000端口,fwiw。)运行
aws配置并选择默认值也不会选择区域。看起来您在本地不需要一个,但是…对我来说也是一样,可能一些默认值已经更改了,尽管
aws dynamodb列表表--端点urlhttp://localhost:8000 --region local
对我有效(实际上可以使用任何值,比如
--region x
)。我必须运行
aws configure
,密钥ID=None,密钥=None,region=local和format=json使其运行。之后无需指定
--区域x
。更简单的是:
printf“None\nNone\nlocal\njson\n”| aws configure
我遇到了与@ruffin提到的区域相同的问题,并通过在一个环境变量中设置它,如:export aws\u DEFAULT\u region=us-east-1。然后我就可以用aws Clip在本地运行dynamodb命令了,谢谢!我在使用ubuntu wsl时,也重新启动了我的电脑,因为我怀疑它可能是本地主机出了问题,但这一天结束时的回答让一切都正常了
aws configure --profile myprofile
AWS Access Key ID [None]: "fakeMyKeyId"
AWS Secret Access Key [None]: "fakeSecretAccessKey"
Default region name [None]: x
Default output format [None]:
aws dynamodb list-tables --endpoint-url http://localhost:8000 --profile myprofile
    
{
   "TableNames": []
}