wis2box is designed to be built as a network of virtual machines within a virtual network. Once this is built, users login into the main wis2box machine to setup their workflow and configurations for data processing and publishing.

The utility provides a number of tools for managing the wis2box-management containers.

The following steps provide an example of container management workflow.

# build all images
python3 build

# start system
python3 start

# stop system
python3 stop

# view status of all deployed containers
python3 status


Run python3 --help for all usage options.

With wis2box now installed and started, it’s time to start up the box and login to the wis2box-management container:

python3 start
python3 login

Now that you are logged into the wis2box-management container, it’s now time to manage station metadata, discovery metadata and data processing pipelines.

Public environment variables

The following environment variables are used for public services:

  • WIS2BOX_API_URL: API application


  • WIS2BOX_URL: Web application, including access to data download/object storage

Default service ports

A default wis2box installation utilizes the following ports for public services:

Public services

  • 80: Web application, API application, storage

  • 1883: Message broker via MQTT

  • 8884: Message broker via MQTT/WebSockets

Internal services

  • 1883: Message broker

  • 9200: Elasticsearch

  • 9000: MinIO

  • 9001: MinIO admin UI

Changing default ports

The docker-compose.override.yml file provides definitions on utilized ports. To change default ports, edit wis2box.env before stopping and starting wis2box for changes to take effect.

MQTT Quality of Service (QoS)

The quality of service level of all wis2box powered brokers is always 1 by default.