Docker for Linux
In this section we'll walk you through the steps to get a single Solace PubSub+ software event broker Docker container up-and-running in a non-cloud Linux environment.
It's assumed you have a stable version of Docker installed.
The number of CPUs and system memory required by your event broker depends on the number of client connections you need to support. By default, fresh installations of the event broker allow up to 100 client connections.
To achieve desired stability and performance, the infrastructure hosting the PubSub+ Software Event Broker must provide a minimum set of system resources. System resources can be broadly categorized into requirements related to processors, memory, and storage. For details about the type of system resources required and their characteristics, see System Resource Requirements.
You can increase certain system limits using System Scaling Parameters. Increasing these system limits also increases the system resources that are required. For more information, see Modifying System Limits Using System Scaling Parameters.
Information about configuring storage can be found at Managing Storage for Container Images.
The example shown on this page is suitable for use for up to 1,000 connections, and is appropriately configured for testing and PoC activities. If you plan to use your event broker in a production environment, or scale your system above 1,000 connections, ensure that you consult the sections listed above and provision your system appropriately.
Pull the event broker image from the Docker repository using these two steps:
- Pull the image:
sudo docker pull solace/solace-pubsub-standard
This example assumes that you are using Solace PubSub+ Standard. If you want to use another edition, you need to obtain the appropriate event broker package:
- Solace PubSub+ Enterprise Evaluation Edition: Go to the Solace Downloads page. Then select the Docker tile in the Solace PubSub+ Enterprise Evaluation Edition Images section and click Download. 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 if you require assistance.
Once you've obtained the package, start Docker and load the image.
sudo docker load -i /tmp/solace-pubsub-evaluation-<version>-docker.tar.gz
There are many options that you can set with the
docker create or
docker run command that is used to build the event broker container. In the following example we will show one that sets up a simple configuration suitable for a test deployment that can be used to help you become familiar with Solace PubSub+:
sudo docker run -d -p 8080:8080 -p 55555:55555 --shm-size=1g --env username_admin_globalaccesslevel=admin --env username_admin_password=admin --name=solace solace/solace-pubsub-standard
This example runs an event broker named
solace, using the
latest PubSub+ Standard image pulled from Docker Hub, creates an
admin user with global access permissions, and publishes the following event broker container ports to the same ports on the Linux host.
port 8080—enables SEMP management traffic to the container. Use this port when connecting to the container from PubSub+ Broker Manager (refer to Solace PubSub+ Broker 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 Default Configuration for Software Event Brokers.
If you loaded the image from a compressed tar archive, replace
solace/solace-pubsub-standard in the example with the repository and tag that corresponds to your image. For example, if you loaded version 18.104.22.1682 of the Solace PubSub+ Evaluation Edition, use
You can use the Solace management tool, PubSub+ Broker Manager, or the Solace CLI to start issuing configuration or monitoring commands on the event broker.
PubSub+ Broker Manager access:
- Open a browser and enter this url: http://<your-event broker's-ip-address>:8080.
- Log in as user
adminwith default password
Solace CLI management access:
Enter the following
sudo docker exec -it <container_name> /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 event broker, refer to Software Event Broker CLI Commands.
You now have an event 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:
- Default Configuration for Software Event Brokers—Go through the default port numbers for event broker services.
- System Resource Requirements—Learn about resource requirements for software event brokers.
When you are feeling comfortable with your event broker, you can test messaging using the Solace SDKPerf application. You can download SDKPerf from the Other Software section in the Downloads page.