version: "3"
services:
# Create service with RabbitMQ.
message-broker:
image: rabbitmq:3-management-alpine
ports:
- "5673:5672" # Corrected port mapping for AMQP connections
- "15673:15672" # for serving RabbitMQ GUI
volumes:
- ${HOME}/rabbitmq2/data/:/var/lib/rabbitmq
- ${HOME}/rabbitmq2/log/:/var/log/rabbitmq
restart: always
networks:
- dev1-network
# Create service with sender.
sender:
build:
context: .
dockerfile: Dockerfile-sender
ports:
- "3000:3000"
environment:
AMQP_SERVER_URL: amqp://guest:guest@localhost:5672/ # Use localhost for connection
restart: always
networks:
- dev1-network
depends_on:
- message-broker
# Create service with message consumer.
consumer:
build:
context: .
dockerfile: Dockerfile-consumer
environment:
AMQP_SERVER_URL: amqp://guest:guest@localhost:5672/ # Use localhost for connection
restart: always
networks:
- dev1-network
depends_on:
- sender
- message-broker
networks:
# Create a new Docker network.
dev1-network:
driver: bridge