Upon a symfony app I try to use localstack for local sqs:
services:
php:
container_name: php
build:
context: ./php
args:
TIMEZONE: ${TIMEZONE}
volumes:
- ../:/var/www/symfony:cached
- symfony_app_var:/var/www/symfony/var
- symfony_app_vendor:/var/www/symfony/vendor
networks:
- symfony_app
extra_hosts:
- "host.docker.internal:host-gateway" php:
container_name: php
build:
context: ./php
args:
TIMEZONE: ${TIMEZONE}
volumes:
- ../:/var/www/symfony:cached
- symfony_app_var:/var/www/symfony/var
- symfony_app_vendor:/var/www/symfony/vendor
networks:
- symfony_app
extra_hosts:
- "host.docker.internal:host-gateway"
localstack:
container_name: localstack
image: localstack/localstack
ports:
- "4566:4566" # main edge port for all services
- "4510-4559:4510-4559" # optional: service-specific ports
environment:
- SERVICES=sqs # only start SQS (you can add more: s3,sns,etc.)
- DEBUG=1
- DATA_DIR=/tmp/localstack/data
- LOCALSTACK_API_KEY=${LOCALSTACK_API_KEY-} # optional, for Pro
volumes:
- "./localstack:/var/lib/localstack"
- "/var/run/docker.sock:/var/run/docker.sock"
networks:
- symfony_app
Then I install all nessesary packages:
composer require symfony/amazon-sqs-messenger
Symfony was configured like:
framework:
messenger:
transports:
async: '%env(MESSENGER_TRANSPORT_DSN)%'
failed: 'doctrine://default?table_name=failed_messages'
sqs_channel_manager:
dsn: 'sqs://localstack:4566'
serializer: App\Infrastructure\Messenger\SqsJsonSerializer
options:
access_key: '%env(AWS_ACCESS_KEY_ID)%'
secret_key: '%env(AWS_SECRET_ACCESS_KEY)%'
region: '%env(AWS_REGION)%'
queue_name: '%env(CHANNEL_MANAGER_QUEUE_NAME)%'
sslmode: false
And then I listen to my queue:
php -d memory_limit=-1 bin/console messenger:consume async sqs_channel_manager -vv
But I get the following error:
18:32:12 INFO [messenger] Try #1 after 1056ms: SSL: no alternative certificate subject name matches target host name 'localstack' for "https://localstack:4566/". ["count" => 1,"delay" => 1056]
Why??? Is there a way to disable ssl?