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.

Before You Begin

It's assumed you have a stable version of Docker installed.

System Requirements

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.

Step 1: Get a PubSub+ Software Event Broker Image

Pull the event broker image from the Docker repository using these two steps:

  1. Start Docker.

  2. 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-evaluation-<version>-docker.tar.gz.
  • 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.

For example:

sudo docker load -i /tmp/solace-pubsub-evaluation-<version>-docker.tar.gz

Step 2: Create the PubSub+ Software Event Broker Container

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 of the Solace PubSub+ Evaluation Edition, use solace-pubsub-evaluation:

Step 3: Manage the PubSub+ Software Event Broker

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:

  1. Open a browser and enter this url: http://<your-event broker's-ip-address>:8080.
  2. Log in as user admin with default password admin.

Solace CLI management access:

  1. Enter the following docker exec command:

    sudo docker exec -it <container_name> /usr/sw/loads/currentload/bin/cli -A

  2. Enter the following commands to enter configuration mode:

    solace> enable
    solace# config

  3. Issue configuration or monitoring commands. For a list of commands currently supported on the event broker, refer to Software Event Broker CLI Commands.

Next Steps

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:

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.