问题标签 [localstack]
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.
unit-testing - 无法使用 moto 测试第三方库以在本地环境中进行 lambda 测试
我正在尝试在本地测试 aws lambda 函数,并成功地使用 moto 库模拟 dynamo DB 之类的 aws 资源,但是在引入组件时,即请求调用第三方库时,由于连接被拒绝,我收到错误。
这主要是因为moto 库reponse.py 类即httpPretty 库。
我们可以使用哪些其他替代方法来修复这些问题或在本地测试具有 aws 资源的 lambda 函数以及调用第三方库。
我的 lambda 函数源:
也尝试过使用 localstack 库并将图像部署到 docker,但它给出的 url 不是无法连接到端点 URL:“ http://localhost:4569/ ”。
node.js - 当我尝试在 localstack 中使用 aws ses 时,电子邮件地址未验证
我正在尝试使用 localstack 来测试使用 SES 发送一些电子邮件的 lambda。
但是当我尝试它时,我得到下一个错误:
电子邮件地址未验证
有什么方法可以在 localstack (docker) 中验证此电子邮件吗?
谢谢!
pd:对不起我的英语
localstack - 无法在 Mac 上启动 localstack docker
我已经在本地安装了 localstack。使用以下 docker 版本。
Docker 版本:- 18.09.1。
还在我的 Mac 中创建了一个 tmp 目录。
TMPDIR=/私人$TMPDIR
localstack 在没有 docker 版本的情况下工作正常。因为我正在编写测试用例,所以想启动 docker 容器并运行我的测试用例。
这是我的日志输出。你能帮我看看有什么问题吗..
java - 是否可以在 amazon kinesis 消费者库 v2 中禁用 SSL 证书检查?
使用 Kinesis Consumer Library 的第 2 版开发 Kinesis Consumer 并将 Dynamo DB 终端节点覆盖到 localstack 终端节点时,由于 SSL 握手错误,库无法创建租赁表。
我可以确认在使用 AWS 的 Dynamo DB 时创建表成功,但是一旦我将端点 url 覆盖为 localstack url,Dynamo DB 客户端在多次重试后无法创建租约表。堆栈跟踪不是很有用,但 Wireshark 显示了所有 SSL 握手错误,所以我只能假设 Amazon SDK 不接受 localstack 证书。我找不到任何关于如何使用该software.amazon.awssdk
软件包禁用证书验证的信息。
/edit 这是基于亚马逊在此处找到的示例:https ://docs.aws.amazon.com/streams/latest/dev/kcl2-standard-consumer-java-example.html
aws-sdk - 无法配置将无服务器堆栈部署到 localstack
我正在使用无服务器来部署 AWS 无服务器堆栈。(即:lambda、sqs、sns)。在尝试部署到 AWS 之前,我想先在本地运行。我已经搜索并查看了适合我用例的localstack 。这是我部署系统的步骤:
- 使用 docker 克隆项目并运行整个堆栈。(命令
docker-compose up
:) - 在我的项目中安装库serverless-localstack并更新
serverless.yml
这是我的配置:
之后,我使用命令部署此堆栈:serverless deploy --stage local
。但我总是遇到例外。
这是我的完整部署日志:
请告诉我如何解决这个问题。
localstack - Localstack SNS:无法向 ElasticMq 发送消息
我有 2 个应用程序:
1 个应用程序使用ElasticMq
队列来收听消息。第二个应用程序发布有关SNS
主题的消息。
我可以订阅该主题的ElasticMq
队列。SNS
但是,当我在主题上发布时,即使订阅成功local stack
,也无法将消息发送给。elasticmq
以下是我收到的错误消息:
awslocal sns 发布 --topic-arn arn:aws:sns:us-east-1:123456789012:classification-details-topic --message "我的消息"
调用 Publish 操作时出错 (InvalidParameter):调用 SendMessage 操作时出错 (AWS.SimpleQueueService.NonExistentQueue):AWS.SimpleQueueService.NonExistentQueue; 请参阅 SQS 文档。
我elasticmq
在本地堆栈上订阅错了吗?
我正在使用 docker-compose 文件运行 localstack
我使用相同的 docker 网络“my_network”将 elasticmq 和其他服务作为不同 docker-compose 的一部分
以下是完整的 docker-compose。我尝试通过将条目组合到一个 docker-compose 文件中来复制它。
重现步骤
在此之后可以运行以下一组命令
docker-compose - 如何在 Mac 上使用一个命令在 docker-compose 中运行 localstack?
我不明白这一行:“(请注意,在 MacOS 上,如果 $TMPDIR 包含 Docker 无法挂载的符号链接,您可能必须运行 TMPDIR=/private$TMPDIR docker-compose up。)”按照这些说明操作,但我希望能够用一个命令运行我的 docker-compose,我现在必须运行docker-compose build
then TMPDIR=/private$TMPDIR docker-compose up
。有什么方法可以成功组合命令?
java - S3 java v1 => v2:putObject 仅在调试时有效 - SdkClientException:无法执行 HTTP 请求:读取超时
我想从 S3 java v1 迁移到 v2,现在由于某种原因,一个小集成测试开始失败。在调试和单步执行时,它正在工作。这是代码(我有一个 localstack https://github.com/localstack/localstack实例正在运行):
这是植根于 putObject 行的异常:
software.amazon.awssdk.core.exception.SdkClientException:无法执行 HTTP 请求:读取超时
这里发生了什么?就示例而言,这应该可以工作https://github.com/awsdocs/aws-doc-sdk-examples/blob/master/javav2/example_code/s3/src/main/java/com/example/s3/ S3ObjectOperations.java
amazon-cloudformation - 无法通过 LocalStack 中的 Cloudformation 创建对 SNS 主题的 SQS 订阅
使用localstack
我正在尝试创建一个执行以下操作的模板:
- 创建 SNS 主题
- 创建 SQS 队列
- 创建将 SQS 队列订阅到 SNS 主题的订阅。
我的docker-compose
文件如下所示:
我的init.sh
文件如下所示:
最后我的 Cloudformation 文件如下所示:
这会产生一个非常模糊的500 Internal Server Error。因为这是localstack
并且我知道 arns 是相当静态的,所以我尝试用以下内容替换yml
订阅文件TopcArn
的Endpoint
内容:
这次我没有收到错误,但没有创建订阅。从localstack
我的调试输出中可以看到:
并且未创建订阅。Cloudformation
执行中不支持此功能localstack
还是我做错了什么?
docker - 使用 dynamodb 和 DATA_DIR 的 localstack 容器,在 docker commit 后不持久化表
我正在尝试基于运行 dynamodb 的 localstack 容器创建映像,其中在容器启动时存在一组表。我的理解是我可以使用环境变量 DATA_DIR=/tmp/localstack/data,然后创建表并提交容器,使用持久表创建一个新图像。当我运行新图像时,表不存在。这是在 localstack/dynamodb 实例中持久化表的正确方法,还是有更好的方法来完成我想要做的事情?