Ошибка, которую вы получаете от LocalStack
, довольно расплывчата, поэтому вам нужно немного углубиться в нее.Прежде всего, вы можете написать, как вы запускаете LocalStack
(это через Docker и если да, какова точная командная строка)?
Использование Docker и docker-compose:
version: '3'
services:
localstack:
image: localstack/localstack:latest
ports:
- "4567-4584:4567-4584"
- "${PORT_WEB_UI-8080}:${PORT_WEB_UI-8080}"
environment:
- SERVICES=cloudformation
- HOSTNAME=localstack
- DEFAULT_REGION=eu-west-2
- PORT_WEB_UI=${PORT_WEB_UI- }
- DEBUG=1
Здесь следует отметить несколько вещей:
DEBUG=1
даст вам точную ошибку в консоли, которую вы выполняете docker-compose, из которой может (или не может) помочь вам диагностировать реальную проблему - Необходимо убедиться, что
Cloudformation
запущен (добавив его в массив SERVICES
) и что соответствующий порт открыт.По умолчанию используется значение 4581 (я просто использую настройки по умолчанию, открывающие все порты, которые LocalStack
использует) :latest
.У меня была более старая версия образа и у меня были проблемы с Cloudformation
, которые исчезли при обновлении до последней версии.Не уверен, в какой момент это было исправлено, но, думаю, это не имеет значения.
И чтобы убедиться, что проблема не в вашем шаблоне, попробуйте использовать тот, который работает, например, выберите один из следующих:
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html
Использование SQS Queue с сигналами Cloudwatch Пример YAML у меня работает следующая команда:
aws cloudformation create-stack --stack-name myteststack --template-body file://cloudf.yml --endpoint-url=http://localhost:4581
Если вышеприведенное работает и у вас все еще есть проблемы с вашим шаблоном, то, по крайней мере, вы знаете, в чем проблема (и, возможно, вы можете опубликовать более подробный вывод DEBUG).