I have problem with connection PHP (on apache) with RabbitMq. Booth services is running in one cointainer in Docker. I have an error:
Uncaught PhpAmqpLib\Exception\AMQPRuntimeException: Error Connecting to server(99): Cannot assign requested address in /usr/local/apache2/htdocs/vendor/php-amqplib/php-amqplib/PhpAmqpLib/Wire/IO/StreamIO.php:27 Stack trace: #0 /usr/local/apache2/htdocs/vendor/php-amqplib/php-amqplib/PhpAmqpLib/Connection/AMQPStreamConnection.php(21): PhpAmqpLib\Wire\IO\StreamIO->__construct('localhost', '5672', 3, 3, NULL) #1 /usr/local/apache2/htdocs/queueProducer.php(12): PhpAmqpLib\Connection\AMQPStreamConnection->__construct('localhost', '5672', 'guest', 'guest') #2 {main} thrown in /usr/local/apache2/htdocs/vendor/php-amqplib/php-amqplib/PhpAmqpLib/Wire/IO/StreamIO.php on line 27
This is my docker-compose.yml. Could you help me?
version: "3.9"
services:
apache:
container_name: apache
build: ./docker/apache
links:
- php
ports:
- "80:80"
volumes:
- ./src:/usr/local/apache2/htdocs
php:
container_name: php
build: ./docker/php
links:
- mysql
ports:
- "9000:9000"
volumes:
- ./src:/usr/local/apache2/htdocs
working_dir: /usr/local/apache2/htdocs
mysql:
image: mysql:8.0.27
container_name: mysql
environment:
MYSQL_ROOT_PASSWORD: 'test'
MYSQL_DATABASE: helloworld
MYSQL_USER: helloworld
MYSQL_PASSWORD: 'test'
ports:
- "3306:3306"
volumes:
- ./database/mysql:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: pma
links:
- mysql
environment:
PMA_HOST: mysql
PMA_PORT: 3306
PMA_ARBITRARY: 1
restart: always
ports:
- 8085:80
rabbit1:
image: rabbitmq:3-management
hostname: rabbit1
ports:
- "5672:5672"
- "15672:15672"
- "25672:25672"
secrets:
erlang_cookie:
file: ./RabbitConfig/erlang_cookie.txt