Skip to content

Command Line OpenDXL Broker Installation

Jeremy Barlow edited this page Oct 12, 2018 · 12 revisions

This page walks through the steps necessary to install the OpenDXL Broker using the Docker command line interface (CLI).

Create OpenDXL Directory Stucture

Prior to installing the OpenDXL Broker, create a directory structure to contain the broker's configuration and log files.

It is highly recommended that a root "opendxl" directory is created. This root directory will be common across the OpenDXL Broker, applications, and clients. Within the root "opendxl" directory, create a "opendxl-broker" directory which will contain the configuration and log files for the broker.

The structure should appear as follows:

opendxl\ 
    opendxl-broker\

#f03c15 NOTE: If you are using Docker Toolbox for Windows, this structure must be created under the current user's directory within the Windows "Users" directory.

For example: C:\Users\myuser\opendxl\opendxl-broker

Create Docker Container

The next step is to execute the Docker run command to create the OpenDXL Broker container.

Run Command Structure

The structure of the Docker run command line is as follows:

docker run -d --name <container-name> -p <host-console-port>:8443 -p <host-broker-port>:8883 -v <host-log-and-config-dir>:/dxlbroker-volume opendxl/opendxl-broker

The parameters are as follows:

Name Recommended Description
container‑name opendxl‑broker The name to associate with the OpenDXL Broker container that is being created.
host‑console‑port 8443 The port used to access the OpenDXL Broker Management Console via the host system.
host‑broker‑port 8883 The port used to access the OpenDXL Broker via the host system.
host‑log‑and‑config‑dir The folder created previously. The folder that was created to contain the OpenDXL Broker logging and configuration files.

#f03c15 NOTE: Windows paths must be transformed when being passed via the VOLUME (-v) argument.

Back slashes must be changed to forward slashes. The drive letter and colon should be changed from "<drive-letter>:" to "/<drive-letter-lowercase>/".

For example: /c/Users/myuser/opendxl/opendxl-broker

Example Run Command

The following is an example of a Docker run command for a Windows host system:

docker run -d --name opendxl-broker -p 8443:8443 -p 8883:8883 -v /c/Users/myuser/opendxl/opendxl-broker:/dxlbroker-volume opendxl/opendxl-broker

Example Run Command Output

If the command is successful, the output should appear similar to the following:

d4a5fe7b2f33376d27ed0bbc576a7d06781580331605e3430dced2d84ce95143

Validate installation

At this point, the OpenDXL Broker container should be running. To validate that broker is running successfully, execute the Docker ps command (list containers command).

Execute List Containers Command

Use the following command to list that status of the currently running containers:

docker ps

Example List Containers Output

The output of the list containers command should look similar to the following:

CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                                            NAMES
fa3ecb784506        opendxl/opendxl-broker   "/dxlbroker/startu..."   2 minutes ago       Up 2 minutes        0.0.0.0:8443->8443/tcp, 0.0.0.0:8883->8883/tcp   opendxl-broker

Ensure that the container named "opendxl-broker" (the name specified when creating the container) has a status of running (up).

Validate Logging and Configuration Files

To validate that the OpenDXL Broker logging and configuration files have been created successfully, examine the contents of the opendxl-broker folder that was created previously.

The contents of the opendxl-broker folder should look similar to the screen shot above.

OpenDXL Broker Management Console

To confirm that the management console is running correctly, open a browser and navigate to the IP address and port (8443) of the management console using https.

The browser should display the management console as shown above. See the Management Console Documentation for more information on using the console (including login information).