Configure a Standalone Software Message Broker
This project provides instructions and tools to get a single Solace PubSub+ software message broker Docker container up-and-running on a desktop using Docker Compose.
If you are interested in setting up message brokers in an High Availability (HA) redundancy group, take a look at Configure High-availability Groups Using Docker Compose.
- Before you begin
- Step 1: Download the Docker Compose Template
- Step 2: Create a PubSub+ Software Message Broker
- Step 3: Manage the Container
- Next Steps
Before you begin
The example shown, which makes use of Solace PubSub+ Standard, is suitable for use with up to 100 client connections. However, a maximum of 1,000 client connections can be configured on your platform, provided appropriate resources have been provisioned. For information on client connection scaling, refer to Scaling Tiers for Software Message Brokers.
It's assumed you have:
- If you are using Windows: Docker for Windows installed, with at least 2 GiB of memory dedicated to Docker for Windows. For more information about allocating memory and swap space, refer to the Docker Settings page.
- If you are using macOS: Docker for Mac installed, with at least 2 GiB of memory dedicated to Docker for Mac. For more information about allocating memory and swap space, refer to the Docker Settings page.
Step 1: Download the Docker Compose Template
Clone the GitHub repository containing the Docker Compose template:
git clone https://github.com/SolaceLabs/solace-single-docker-compose.git cd solace-single-docker-compose/template
Step 2: Create a PubSub+ Software Message Broker
Run the following command to create a PubSub+ software message broker using the Compose template:
docker-compose -f PubSubStandard_singleNode.yml up -d
The Compose template runs a message broker named
pubSubStandardSingleNode, using the
latest PubSub+ Standard image pulled from Docker Hub, creates an
admin user with global access permissions, and publishes the following message broker container ports to the same ports on the host:
- port 8080—enables SEMP management traffic to the container. Use this port when connecting to the container using the PubSub+ Manager.
- port 55555—enables SMF data to pass through the container.
To use additional services, you can edit the compose template to publish each corresponding port. For example, to enable AMQP over TLS, uncomment the appropriate line in the compose template (
- '5671:5671'). For more information about the default ports used for each service, refer to Software Message Broker Configuration Defaults. Once the container is created, it will take about 60 seconds for the message broker to finish activating.
Step 3: Manage the PubSub+ Software Message Broker
Solace PubSub+ Manager management access:
- Open a browser and enter this url: http://localhost:8080.
- Log in as user
adminwith default password
Solace CLI management access:
- Enter the following
docker exec -it pubSubStandardSingleNode /usr/sw/loads/currentload/bin/cli -A
- Enter the following commands to enter configuration mode:
solace> enable solace# config solace(configure)#
- Issue configuration or monitoring commands. For a list of commands currently supported on the message broker, refer to Software Message Broker CLI Commands.
You now have a message broker Docker container with a basic configuration that is ready for messaging tasks.
There are additional configuration tasks you can make use of in the following topics:
- Software Message Broker Configuration Defaults—Go through the default port numbers for message broker services.
- Scaling Tiers for Software Message Brokers—Learn about message broker connection scaling tiers.
- Docker Image Specific Topics—Learn to prepare the message broker Docker container for a variety of messaging functions.
Also, in order to fully utilize the message broker's features, you should familiarize yourself with the configuration operations common to both Solace PubSub+ software message brokers and appliances. For information, see the topics in the Configuration section.