Docker for Mac
In this section we'll walk you through the steps to get a single Solace PubSub+ software message broker Docker container up-and-running in macOS. If you are interested in setting up message brokers in an HA redundancy group on a macOS platform, take a look at Configuring HA Groups in macOS.
In 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 Connection Scaling Tiers.
It's assumed you have:
- Mac OS X Yosemite 10.10.3 or higher.
- Docker for Mac installed, with at least 2 GiB of memory dedicated to the Docker for Mac. For more information about allocating memory and swap space, refer to the Docker Settings page.
- The following features are not supported: Replication; Docker Engine Swarm mode.
- Multi-node routing (MNR) is not supported at 100 connection scale. To use MNR, you must use the 1000 connection scaling tier or higher.
- Only bridge networking is supported.
First, you need to obtain a message broker Docker package, which is a compressed tar archive containing a message broker Docker repository consisting of a single message broker Docker image.
- Solace PubSub+ Standard: Go to the Downloads page of dev.solace.com. Then select the docker link from Solace PubSub+ Standard. You will be able to download a compressed archive file called
- Solace PubSub+ Enterprise Evaluation Edition: Go to the Downloads page of dev.solace.com. Then select the docker link from Solace PubSub+ Enterprise Evaluation Edition. You will be able to download a compressed archive file called
- Solace PubSub+ Enterprise: If you have purchased a Docker image of Solace PubSub+ Enterprise, Solace will give you information for how to download the compressed tar archive package from a secure Solace server. Contact Solace Support at firstname.lastname@example.org if you require assistance.
Once you have obtained a copy of the message broker package, you can upload it to a directory on your host and load the image using these two steps:
- Start Docker and open a command-line terminal.
- Load the image:
> docker load -i /Users/username/Downloads/solace-pubsub-standard-8.10.x.x-docker.tar
In this example, the compressed tar archive of Solace PubSub+ Standard has been uploaded to
When loading is finished, you can check the image with the
> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
solace-pubsub-standard 8.10.x.x b8a61124d92f 10 days ago 1.644 GB
Once you have loaded the image, you can run the container on your macOS host using Docker's
> docker run -d -p 8080:8080 -p 55555:55555 --shm-size=2g --env 'username_admin_globalaccesslevel=admin' --env 'username_admin_password=admin' --name=solace solace-pubsub-standard:8.10.x.x
This example runs a message broker named
solace, using Solace PubSub+ Standard software message broker
8.10.x.x, creates an
admin user with global access permissions, and publishes the following message broker container ports to the same ports on the macOS host:
- port 8080—enables SEMP management traffic to the container. Use this port when connecting to the container using the PubSub+ Manager (refer to Solace PubSub+ Manager for more information).
- port 55555—enables SMF data to pass through the container.
To use additional services, you must publish each corresponding port. For example, to pass AMQP encrypted traffic, you need to publish port 5671. For more information about the default ports used for each service, refer to Configuration Defaults.
Tip: You can use Docker's
ps command to check on the status of the message broker container once it's running.
> docker ps
STATUS column associated with the message broker displays if the container is running and for how long.
PORTS column associated with the message broker displays the port mapping from the macOS host to the container.
You can access the Solace management tool, PubSub+ Manager, or the Solace CLI to start issuing configuration or monitoring commands on the message broker.
Solace PubSub+ Manager management access:
- Open a browser and enter this url: http://localhost:8080.
- Log in as user
Solace CLI management access:
Enter the following
> docker exec -it solace /usr/sw/loads/currentload/bin/cli -A
Enter the following commands to enter configuration mode:
- 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:
- Configuration Defaults—Go through the default port numbers for the message broker services.
- Connection Scaling Tiers—Learn about message broker connection scaling tiers.
- Topics Unique to Docker Images—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.
When you are feeling comfortable with your message broker, you can test messaging using the Solace SDKPerf application. You can download SDKPerf from the Tools section of the dev.solace.com Downloads page.