Installing the Guavus SQLstream Trial Docker Container

You can run Guavus SQLstream as a Docker container, as either a Complete or Minimal installation. The Complete and version includes a Cover Page that lets you manage installed applications.

Docker containers are like lightweight Virtual Machines, but instead of bundling an entire operating system, they bundle the code, a runtime, libraries, environment variables, and config files required to make Guavus SQLstream work. Using Docker, you can do everything you could do with a "bare metal" installation of s-Server and StreamLab.

You can run Docker on Linux, Mac, and Windows systems. For more information, see https://docs.docker.com/engine/installation/.

We recommend running the Guavus SQLstream Docker container on a system with at least 2 CPU cores, 4GB RAM, and 4GB of available disk space. All Guavus SQLstream Containers are 64-bit and require a 64-bit host OS and a Docker version that supports 64-bit containers.

sqlstream/complete

We have designed the Guavus SQLstream Complete container for users that are getting started with Guavus SQLstream. It includes an Ubuntu server with s-Server, WebAgent, s-Dashboard, StreamLab, and the Guavus SQLstream Cover Page installed, as well as Apache Kafka, PostgreSQL, and a set of demonstration applications with sample data.

To run the Guavus SQLstream Complete container, make sure Docker is installed and enter the following command:

docker run -d -p 8080:80 -p 5590:5590 -p 5585:5585 -p 5595:5595 -p 5580:5580 -p 5560:5560 -p 9092:9092 -p 2181:2181 sqlstream/complete

(The -p command publishes needed ports to your host machine, so that you can connect with Guavus SQLstream components in the container.)

sqlstream/minimal

The Guavus SQLstream Minimal image contains only s-Server and WebAgent. This version only needs to map ports 5570 (s-Server) and 5580 (WebAgent).

We have designed this image for integrating with orchestrators like Kubernetes, mass deployments, autoscaling and highly available environments.

To run the Guavus SQLstream Minimal Docker container, make sure Docker is installed and enter the following command:

docker run -d -p 5580:5580 -p 5570:5570 sqlstream/minimal

(The -p command publishes needed ports to your host machine, so that you can connect with Guavus SQLstream components in the container.)

sqlstream/development

The Guavus SQLstream Development image has now been deprecated - the last available version is 7.2.0 (January 2021). If you have been using sqlstream/development, you can safely switch to sqlstream/complete.

Tailing Docker Messages

You can follow the docker logs (tail log messages) by first using docker ps to get a container id or generated name:

$ docker run -d -p 5580:5580 -p 5570:5570 sqlstream/minimal
450fdbd61f94699bf025572714a2f9a56bec435bb8bb206f0dcaa83ec1e7b547

$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                            NAMES
450fdbd61f94        sqlstream/minimal   "/bin/bash -c /etc/i…"   4 seconds ago       Up 3 seconds        0.0.0.0:5570->5570/tcp, 0.0.0.0:5580->5580/tcp   vigilant_panini

Then use either the container id or the name (450fdbd61f94 or vigilant_panini in this example) with docker logs. Using the --f switch results in tailing the logs forever (until you cancel using Ctrl-C).

    docker logs -f <containerid-or-name>

To avoid the need for the docker ps step you may name your containers using the --name switch for docker run:

$ docker run --name mytestcontainer -d -p 5580:5580 -p 5570:5570 sqlstream/minimal
cb63b9e4b2503f1e05e4d2c7f2d9fe097311e257cb9cf1ba5f590b318cd199af

$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                            NAMES
cb63b9e4b250        sqlstream/minimal   "/bin/bash -c /etc/i…"   6 seconds ago       Up 5 seconds        0.0.0.0:5570->5570/tcp, 0.0.0.0:5580->5580/tcp   mytestcontainer

$ docker logs -f mytestcontainer
SQLSTREAM_HOME=/opt/sqlstream/7.0.6.20069-55f2203c/s-Server
SQLSTREAM_CATALOG_DIR=/opt/sqlstream/7.0.6.20069-55f2203c/s-Server/catalog
SQLSTREAM_TRACE_DIR=/var/log/sqlstream
...

For more information on viewing container logs, see https://docs.docker.com/engine/reference/commandline/logs/.

Using the Guavus SQLstream Container Cover Page

If it does not open automatically, to access the Guavus SQLstream Cover Page, open your browser and go to the following address:

http://localhost/

The Guavus SQLstream Container Cover Page displays. Note: The message at the top of the page will differ depending on the container in which you have installed Guavus SQLstream.

This page lets you do the following:

  1. Confirm that the following Guavus SQLstream components are running (you can also stop these from this page): s-Server, WebAgent, s-Dashboard, StreamLab
  2. Register your Guavus SQLstream Container, which installs as a free version limited to processing 1G of data per day. Once you have registered, SQLstream will send you a 60-day trial license for Guavus SQLstream's Enterprise Edition, which lets you process unlimited data. When your 60-day trial license expires, this instance will revert to the 1GB/day limit.
  3. Run the Mochi Demonstration application. Using s-Dashboard, the Mochi demonstration application simulates clusters of failed logins at a bank, either by phone or web, as well as withdrawals or debits using the same customer id number.
  4. Start a stream of simulated bus location data, see this data being used in a StreamLab application, and view a tutorial on how to integrate this data on your own.
  5. Download and install SQLstream s-Studio and other client tools. See Installing SQLstream s-Studio and Installing SQLstream Client Tools for more details. For both s-Studio and sqlLine, you will need the JDBC address for the s-Server instance in the Guavus SQLstream Docker Container. By default, this address is jdbc:sqlstream:sdp://localhost:5570.