首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用localstack和docker-compose自动创建SQS队列

使用localstack和docker-compose自动创建SQS队列
EN

Stack Overflow用户
提问于 2021-06-25 20:56:05
回答 2查看 500关注 0票数 1

有没有办法使用localstack和docker-compose.yml自动创建SQS队列?

我的docker-compose.yml:

代码语言:javascript
复制
version: '3.8'
services:
  localstack:
    image: localstack/localstack
    ports:
      - "4566:4566"
      - "4571:4571"
      - "${PORT_WEB_UI-8080}:${PORT_WEB_UI-8080}"
    environment:
      - SERVICES=${SERVICES- }
      - DEBUG=${DEBUG- }
      - DATA_DIR=${DATA_DIR- }
      - PORT_WEB_UI=${PORT_WEB_UI- }
      - LAMBDA_EXECUTOR=${LAMBDA_EXECUTOR- }
      - KINESIS_ERROR_PROBABILITY=${KINESIS_ERROR_PROBABILITY- }
      - DOCKER_HOST=unix:///var/run/docker.sock
    volumes:
      - "${TMPDIR:-/tmp/localstack}:/tmp/localstack"

我希望在启动docker-compose时创建一些队列,而不是手动创建。

EN

回答 2

Stack Overflow用户

发布于 2021-11-22 09:43:54

如果您希望在docker up时自动引导所有需要的队列,您可以添加一个shell脚本,该脚本将在docker容器启动时由localstack运行。

下面是一个例子。

将以下内容添加到您的volumes

代码语言:javascript
复制
- ./localstack_bootstrap:/docker-entrypoint-initaws.d/

然后,在上面指定的目录(在我的示例中是localstack_bootstrap)中添加一个shell脚本,该脚本具有您喜欢的任何名称(我决定将其命名为sqs_bootstrap.sh),其中包含以下内容:

代码语言:javascript
复制
#!/usr/bin/env bash

set -euo pipefail

# enable debug
# set -x

echo "configuring sqs"
echo "==================="
LOCALSTACK_HOST=localhost
AWS_REGION=eu-central-1

create_queue() {
    local QUEUE_NAME_TO_CREATE=$1
    awslocal --endpoint-url=http://${LOCALSTACK_HOST}:4566 sqs create-queue --queue-name ${QUEUE_NAME_TO_CREATE} --region ${AWS_REGION} --attributes VisibilityTimeout=30
}

create_queue "queue1"
create_queue "queue2"

别忘了运行chmod +x ./localstack_bootstrap/sqs_bootstrap.sh

有关我在这里找到的更多详细信息- https://joerg-pfruender.github.io/software/docker/microservices/testing/2020/01/25/Localstack_in_Docker.html

票数 5
EN

Stack Overflow用户

发布于 2021-07-06 15:07:17

Localstack目前没有在启动时自动执行此操作的功能。就目前而言,我建议:

  • 创建一个脚本,该脚本启动docker-compose并调用aws cli工具来创建您需要的主题。这需要在脚本中休眠:(
  • 在本地堆栈的基础上构建一个镜像,该镜像具有额外的启动时间,并从您的其他安装程序

开始

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68131349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档