Quickstart

Docker quickstart

Kpow Docker images are hosted at Docker Hub.

To connect the latest Kpow Docker image to a Kafka cluster:

  • Get a Free trial license. See: Trials and licenses.
  • Create a config.env file containing your connection, license, and feature variables.
## The Kafka Bootstrap URL for your cluster (Required).
BOOTSTRAP=kafka-1:9092,kafka-2:9092,kafka-3:9092

## Your license details (Required).
## These parameters can be cut/paste from your license email
LICENSE_ID=1c99v4-f690-4a4f-b144-73de2369444a
LICENSE_CODE=TRIAL_30D
LICENSEE=My Corp
LICENSE_EXPIRY=2020-09-05
LICENSE_SIGNATURE=15CFFF969111DB6DCA142B6F1E0065F94A614251B80128D52C2CD45993A021AE10E90F57B90FF76CC1B992C16E54BCF1CBE7E5EE3124B3E585BE133774836A6EBB51B55E67EF60F4A435EBEC9F07A26CEABDCF6E3CF4137A33201E7662AF1F7986E57341E0EAEB884BBF320C348D62679F521259DAD1E03F6F79DB53D83CD41B

## Optional from here:

## Name your Kpow installation (this appears in the UI)
ENVIRONMENT_NAME=Trade Book (Staging)

## Kpow Feature Flags (See: RBAC for per user controls):

## Allow users to create new topics
ALLOW_TOPIC_CREATE=true

## Allow users to delete topics
ALLOW_TOPIC_DELETE=true

## Allow users to edit topic configuration
ALLOW_TOPIC_EDIT=true

## Allow users to view topic data
ALLOW_TOPIC_INSPECT=true

## Allow users to produce messages to topics
ALLOW_TOPIC_PRODUCE=true

## ... etc (see guide for more configuration flags).
  • Start the latest Kpow container with your config.env file.
docker run -p 3000:3000 --env-file ./config.env -m 2G factorhouse/kpow-ee:latest
  • Kpow is now running on http://localhost:3000

Accessing files on the host machine

Sometimes when configuring Kpow you require access to files on the host machine from within the Docker container, e.g.

  1. RBAC YAML configuration
  2. Keystore or Truststore files
  3. Metadata.xml for SSO integration

One easy way to provide access to local files is with a volume mount, like so:

docker run --volume="$PWD/config:/config" -p 3000:3000 --env-file ./docker/local-with-auth-schema.env -m 4G factorhouse/kpow-se:latest

In the example above we mount the directory local to where the docker command runs ./config as a directory within the container /config.

We can then reference a file in our environment variable configuration like so:

SSL_TRUSTSTORE_LOCATION=/config/ssl/truststore.jks