Skip to main content

Quick start

This guide provides simple instruction to get a single host instance of KeySquare running quickly. For more detailed deployment instructions, please see Deployment Guide

You'll need access to:

  1. Docker (official documentation)
  2. /dev/shm mounted (ideally as RAM disk) and accessible

And Java 17 if you wish to use the java api to connect to the platform.

Installation

Platform installation

The platform is provided as a tarball with name like: platform-(x.y.z).tar.gz where (x.y.z) represents the version number. Please reach out to us if you don't have this file.

If a platform has been previously installed and is running, go to the installation directory and turn it off e.g.

cd /opt/keysquare/platform/platform-0.1.1
./down-core.sh
  1. Extract the provided platform-(x.y.z).tar.gz to a suitable location e.g. /opt/keysquare/platform.
    tar xvzf platform-0.1.2.tar.gz -C /opt/keysquare/platform
  2. This will create a version number directory /opt/keysquare/platform/platform-0.1.2/
  3. Change directory to installation directory and run ./setup.sh
    cd /opt/keysquare/platform/platform-0.1.2
    ./setup.sh
  4. Run ./up-core.sh to start the platform
    ./up-core.sh

That's it!

For more detailed deployment instructions, please see Deployment Guide

Open http://<server>:6500 in your browser to view data replacing <server> with the hostname where the platform is being installed.
Use default credentials username=admin, password=ksadmin

Key UI Landing Page

Following is a list of default configuration used to run the platform.
In case of any port conflicts, update the relevant property in: /opt/keysquare/platform/platform-0.1.2/docker.env

All possible configurations are listed here

Ports:

ApplicationPropertyDefault Port
KS Ingress ControllerKS_INGRESS_HTTP_PORT6500
Key UIKS_KEY_UI_HTTP_PORT6600
KeySquare ProxyKS_KEY_SQUARE_PROXY_GRPC_PORT6700
KeyAccessKS_KEY_ACCESS_HTTP_PORT6800
Web-Data-ServerKS_WEB_DATA_SERVER_HTTP_PORT6900
GrafanaKS_QUESTDB_HTTP_PORT5500
QuestDbKS_GRAFANA_HTTP_PORT5510

Ingress Routes:

RouteApplicationFull Path
*Key UIhttp://<server>:6500
/api/webWeb-Data-Serverhttp://<server>:6500/api/web
/api/key-accessKeyAccesshttp://<server>:6500/api/key-access
/api/proxyKeySquare Proxyhttp://<server>:6500/api/proxy

Java Client Sample Installation

You can run the Java Client Samples in a number of ways

  • Remote Dev on Linux and Dev Containers
    • Pros
      • Remote development is awesome
        • When you run Dev Container on Linux, if you start the process, it's running directly on the Linux server
          • Less load on your laptop
          • Linux server will have better networking
          • Linux server will have access to things that you may not
      • Dev Containers are awesome
        • Repeatable environments
    • Cons
      • Java in VS Code is a bit hit or miss
      • IntelliJ users need Ultimate
      • Eclipse users are out of luck
  • Windows and Dev Containers
    • Pros
      • Develop however you please
    • Cons
      • Running apps on your workstation is less performant than a server
  • Traditional Windows dev workflow
  • Linux without an IDE

Linux and Dev Containers

  1. Extract the provided client-sample-(x.y.z).tar.gz to a suitable location e.g. /opt/keysquare/client-sample/. Note (x.y.z) represents the version number.
$ tar xvzf client-sample-0.1.2.tar.gz -C /opt/keysquare/client-sample
  1. After running 1, that will create a version number directory /opt/keysquare/client-sample/client-sample-0.1.2/
  2. Do a mvn clean compile to verify
$ cd /opt/keysquare/client-sample/client-sample-0.1.2
$ mvn clean compile
  1. Load a remote session in VS Code or IntelliJ Ultimate and load the directory as a Dev Container

Start Building!

Ready to build your first application?

Learn how to do so in the language of your choice: