问题标签 [amazon-dynamodb-local]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
446 浏览

amazon-dynamodb - 如何静默运行 aws cli 命令以创建 dynamodb 表

我正在创建一个 shell 脚本,它将在本地创建几个 dynamodb 表等。这是我正在使用的创建表 AWS CLI 命令:

使用 table-user.json 具有所有用于创建的表相关信息。

此命令的问题是我需要单击键“q”以继续执行下一行,因为它提供了表详细信息作为输出。前任:

如何静默运行 create table 命令?

0 投票
0 回答
284 浏览

docker - Boto3 超时连接到本地 dynamodb 但可以卷曲

我一直在尝试按照各种说明和故障排除来让一个 docker 容器连接到另一个在本地运行的 dockerdynamodb容器boto3。到目前为止的参考/故障排除:

Dockerfile ( docker build -t min-example:latest .):

码头工人撰写(min-example.yml):

min_example.py

运行

它挂在ddb.tables.all()电话上,并因错误而超时:

botocore.exceptions.ReadTimeoutError:端点 URL 读取超时:“http://db:8000/”

有趣的是,我可以卷曲:

{"__type":"com.amazonaws.dynamodb.v20120810#MissingAuthenticationToken","message":"请求必须包含有效的(注册的)AWS 访问密钥 ID 或 X.509 证书。"}

这表明容器可以通信。

0 投票
1 回答
603 浏览

node.js - AWS Dynamodb Local 无法启动:UnknownError:未找到:DynamoDB - 错误 - 未知错误

目标

我正在尝试使用以下命令在本地启动 Dynamodb

哪个调用此脚本

问题

此调用失败,并出现本文末尾链接的错误。如果我导航到 localhost:8000/shell,aws 本地已加载,但没有表。

以前的尝试

  • 我们尝试过使用不同版本的java。当前版本是 13.0.2
  • 我们尝试删除 node_modules 文件夹和 .dynamodb 文件夹,然后使用 yarn 重新安装它们
  • 我们确认已安装无服务器(版本信息如下)

问题

有谁知道可能导致此错误的原因?
或者有没有人有任何故障排除的想法?

错误信息

0 投票
2 回答
234 浏览

amazon-dynamodb-local - 使用 AWS Workbench 从本地容器中删除 dynamodb 表

我正在尝试在本地使用 DynamoDB,并且正在使用容器https://hub.docker.com/r/amazon/dynamodb-local与 AWS Workbench 相结合(https://docs.aws.amazon.com/amazondynamodb/latest /developerguide/workbench.html)。

我已经在本地容器上成功创建了一个表,但现在我想删除它。我假设 AWS Workbench 具有此功能(?)而我只是愚蠢...有人可以指出我需要按下的按钮吗?

非常感谢。

0 投票
1 回答
183 浏览

java - docker image 构建另一个镜像

嗨,我需要 dockerize 一个系统。我必须这样做的方式如下

脚步:

  1. up dynamodb 本地实例(仅用于 up )。
  2. 运行自定义脚本来创建表(必须通过这个来创建表)。
  3. 然后运行系统。

我也写了一个撰写文件。我这样做的方式是,如下所示

docker 文件如下。(抱歉不得不隐藏敏感细节)

我的问题是看起来 dynamodb 在脚本运行之前没有启动。所以脚本会因为无法连接到服务器而引发错误。如果我可以编写一个自定义的带有已执行脚本的 dynamodb,那也很棒。请帮忙

0 投票
0 回答
242 浏览

go - 针对 DynamoDB-Local 测试容器

我想在将容器推送到 aws ecs 之前在本地测试它。

我使用 Go (aws-sdk-go-v2) 端点解析器和 http://localhost:8000 作为 url 对 docker-compose 堆栈进行了单元测试,其中包括 dynamodb-local 容器。

所以我想在本地构建和测试容器,并意识到我需要将它附加到 docker-compose 创建的默认网络。我对此有点挣扎,所以我建立了一个精简的试验。我创建了一个端点解析器,其 URL 为 http://dynamo-local:8000(在 dc 中命名为容器 dynamo-local),并将其附加到 docker run 中的默认网络。

现在一切正常,我可以成功执行各种表操作,但让我感到困惑的一件事是,如果我运行 aws cli:

aws --endpoint-url=http://localhost:8000 dynamodb 列表

那么当肯定存在表时,输出显示不存在表。我天真地假设,因为我可以访问具有不同端点的同一容器的端口 8000,我应该能够访问相同的资源。错误的。

显然是我的教育差距。我错过了什么?我需要将试用版扩展到对完整应用程序的适当测试,因此了解这里发生的事情对我来说很重要。

有没有办法可以使用 aws cli 访问表?

码头工人撰写文件:

0 投票
1 回答
37 浏览

amazon-dynamodb-local - AWS DynamoDB-本地与真实事物的奇偶校验

dynamodb-local与 AWS 云版本有多接近?

我主要是在寻找应用程序使用的接口和功能的比较,尽管任何其他警告都会有所帮助(例如,IAM、IaC 或索引)。

0 投票
1 回答
760 浏览

node.js - 无服务器离线 + DynamoDb 本地问题

我最近一直在玩无服务器离线和本地 dynamodb。当我使用 websockets 时,一切都很好。然后,我决定将协议更改为 http。不知道这有什么关系,但这是我在代码中所做的唯一更改。

现在,我收到来自 dynamodb 的错误(包括 db 命令的输出):

我用命令检查了现有表:

我看到,该表存在:

然后我打印了 dynamodb 客户端,我看到,根据文档,提供的选项似乎是正确的:

这就是我创建客户端的方式:

更新:添加我的 serverless.yml dynamodb 部分配置:

将不胜感激这方面的任何建议。

0 投票
3 回答
2502 浏览

java - M1苹果硅mac上的Dynamodb本地设置

我使用https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html对 dynamodb 进行了本地设置

我可以使用以下命令启动实例,java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb但是当我尝试执行其他任何操作时,它会给我以下错误。

2021 年 3 月 15 日下午 2:10:28 com.almworks.sqlite4java.Internal log 警告:[sqlite] 无法打开 DB[15]:com.almworks.sqlite4java.SQLiteException:[-91] 无法加载库:java.lang。 UnsatisfiedLinkError: /Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib: dlopen(/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib, 1): 找不到合适的图像。确实找到了:/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib:通用包装器/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib 中没有匹配的体系结构:通用包装器中没有匹配的体系结构三月2021 年 1 月 15 日下午 2:10:28 com.almworks.sqlite4java。内部日志严重:[sqlite] SQLiteQueue[shared-local-instance.db]:运行作业队列 com 时出错。almworks.sqlite4java.SQLiteException:[-91] 无法加载库:java.lang.UnsatisfiedLinkError:/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib:dlopen(/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/ libsqlite4java-osx.dylib, 1): 没有找到合适的图像。确实找到了:/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib:通用包装器/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib 中没有匹配的体系结构:通用包装器中没有匹配的体系结构com.almworks.sqlite4java.SQLite.loadLibrary(SQLite.java:97) 在 com.almworks.sqlite4java.SQLiteConnection.open0(SQLiteConnection.java:1441) 在 com.almworks.sqlite4java.SQLiteConnection.open(SQLiteConnection.java:282)在 com.almworks.sqlite4java。SQLiteConnection.open(SQLiteConnection.java:293) 在 com.almworks.sqlite4java.SQLiteQueue.openConnection(SQLiteQueue.java:464) 在 com.almworks.sqlite4java.SQLiteQueue.queueFunction(SQLiteQueue.java:641) 在 com.almworks.sqlite4java .SQLiteQueue.runQueue(SQLiteQueue.java:623) at com.almworks.sqlite4java.SQLiteQueue.access$000(SQLiteQueue.java:77) at com.almworks.sqlite4java.SQLiteQueue$1.run(SQLiteQueue.java:205) at java。 base/java.lang.Thread.run(Unknown Source) 引起:java.lang.UnsatisfiedLinkError: /Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib: dlopen(/Users/ahsanejaz/Downloads/dynamodb_local_latest/ DynamoDBLocal_lib/libsqlite4java-osx.dylib, 1):找不到合适的图像。确实找到了:/Users/ahsanejaz/Downloads/dynamodb_local_latest/DynamoDBLocal_lib/libsqlite4java-osx.dylib:

这个问题与新的 M1 Apple Silicon 架构有关吗?有什么解决方法吗?

0 投票
0 回答
114 浏览

amazon-dynamodb - dynamodb 本地,重复键

我正在使用 dynamodb Local。我正在尝试将两个地址分配给一个人,但出现“重复密钥”错误。我想为一个人添加更多国家和更多地址。但是每当我尝试为该人添加另一个国家和地址时,它都会出现重复密钥错误

有人可以帮我吗?帮助表示赞赏。 我的本地主机代码的图像