Self-hosted SeekTable setup

You can install and run SeekTable on-premise in docker containers:

  • Linux that can host Docker containers (recommended: Ubuntu Server 18.04 or newer). The minimal configuration with 1-2 CPU cores / 4GB RAM would be enough in most cases.
  • Mac OS
  • Windows (10/11 x64): use Oracle VirtualBox to run a VM with Linux or Docker Toolbox for Windows
You can run self-hosted SeekTable in cloud with a few clicks from AWS marketplace.
  1. Ensure that docker is installed. If not: Docker Engine install instructions.
  2. Check whether Docker Compose V2 plugin is installed: try to run docker compose version command.
    If it doesn't work (so you have a legacy docker version) you can deploy previously used docker-compose V1 as a container with these commands:
    curl -L --fail https://github.com/docker/compose/releases/download/1.29.2/run.sh -o /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose
    In that case don't forget to use docker-compose instead of docker compose.
  3. Download SeekTable's configuration for docker-compose: docker-compose.tar.gz and extract the files:
    $ mkdir -p /opt/seektable
    $ cd /opt/seektable
    $ wget https://www.seektable.com/docker-compose.tar.gz -P ./
    $ tar xf docker-compose.tar.gz
    ODBC Driver for BigQuery is not included into the default distribution.
    To enable BigQuery connector use this configuration: https://www.seektable.com/docker-compose-bigquery.tar.gz
  4. Optional: edit docker-compose.seektable.env file to configure an app base URL and other self-hosted SeekTable system settings.
  5. Important: ensure that server's firewall allows incoming connections for ports 80 and 5200. It is possible to use a single port (80 or 443) with help of a reverse proxy server.
  6. Run the following command:
    $ sudo docker compose up
    Add -d option if you want to run SeekTable in the background and start it up automatically on reboot.
  7. Now you can open http://your_server_hostname_or_ip/ and create accounts on your SeekTable installation.
    If your installation can be accessed from the Internet it is recommended to follow security best practices.
  1. Download SeekTable configuration for docker-compose: docker-compose.tar.gz.
  2. Use kubernetes/kompose to deploy SeekTable on Kubernetes directly with kompose up, or kompose convert to convert SeekTable's docker-compose.yml to files that you can use with kubectl.
  3. SeekTable containers use these defaults for ports mapping:
    • Container seektable/seektable: internal 5000 → external 80
    • Container seektable/pivotdataservice: internal 5000 → external 5200
    If you need to use another external port for 'pivotdataservice' (instead of 5200) the following environment variable should be specified for seektable/seektable container (specify port that you use instead of 5200):
    SeekTable_ST__PivotDataService__ExternalBaseUrl=//@host:5200/
  4. SeekTable expects that containers can use these internal endpoints to reach each other (container names in the docker-compose configuration):
    • http://seektable:5000/
    • http://pivotdataservice:5000/
    You may change these URLs in this way:
    • Container seektable/seektable env variable:
      SeekTable_ST__PivotDataService__InternalBaseUrl=http://pivotdataservice:5000/
    • Container seektable/pivotdataservice env variable:
      PivotDataService_PivotDataService__CubeProviders__0__Url=http://seektable:5000/api/cube/schema?seektable_user_id=@seektable_user_id&seektable_user_readonly=@seektable_user_readonly
Upgrade: to download the latest SeekTable images run these commands:
$ sudo docker compose stop
$ sudo docker compose pull
$ sudo docker compose up -d

Scalability notice: standard version of self-hosted SeekTable uses Sqlite and not designed for multiple containers (replicas) per service. If you are interested in the high-availability version that supports horizontal scaling please contact us.

In case of complications or questions please contact support@seektable.com.

Usage conditions

SeekTable installation uses 2 docker images:

seektable/seektable
FREE
This is the main SeekTable web application. You can use this image for FREE under the following conditions:
  • installation should be used/accessed only by employees/customers of your company; you cannot make it public (accessible for everyone with sign-up form).
  • usage of modified image is prohibited (changes in any application files including css/js etc)
  • your on-premise SeekTable deployment is activated automatically; we may contact you by email and ask for the feedback.

You can change usage conditions or unlock additional SeekTable features with paid subscriptions.

seektable/pivotdataservice
FREE for personal use (with trial notices/limitations)
OR
$499/year

PivotData microservice is a reporting engine used by SeekTable (both products are owned & maintained by the same team). This engine is a separate commercial product that requires per-deployment license key; when it is used as a part of self-hosted SeekTable special usage conditions are applicable:

  • PivotData microservice that runs in trial mode (without a license key) can be used for any period of time in FREE SeekTable installation . Any paid subscription or non-personal use requires a license for PivotData microservice.
  • You cannot use PivotData microservice as a separate product for FREE (call its APIs directly).
  • In the trial mode special notices are displayed at the bottom of pivot tables, and max number of cells with values is limited. You can hide trial notice / remove report-size limitations with an appropriate self-hosted SeekTable subscription (see below).

Paid subscriptions for self-hosted SeekTable advanced features

PivotData Microservice license Activates a license key for SeekTable's reporting engine: removes trial notices at the bottom of pivot tables / other report-size limitations.
Required for non-personal use / any other paid subscription.
$499 / year
System/users admin Administrator role for one or several accounts. Administrator can:
  • add/update/delete user accounts, login-as-user, reset passwords
  • restore account data from XML backup
  • enable "admin" role for another user accounts
  • system setup: disable public sign-ups (new users can be added only by admins), disable self-delete for user accounts, disable file upload / add cube for non-admins, enable subscribe to report (disabled by default for installations)
$499 / year
White-label mode
Requires: system admin
Use your company logo/brand instead of SeekTable, hide "Generated by" and "Powered by" notices in app/exports/shared reports, hide links to seektable.com website, set custom footer content for emails and PDF export, customize SeekTable app visual styles by adding your own CSS, localize app UI (customize or translate the interface to non-English language). $1499 / year
Dashboards Enables the ability to create pages with several reports controlled by a common filter. Layout is controlled with a HTML template. With dashboards it is possible to display report's data with custom visuals (maps, advanced charts etc). Dashboards may be published/embedded in the same way as individual reports (requires "Advanced publishing") and/or shared to other users (requires "Team sharing"). $499 / year
Single sign-on (SSO) Enables the ability to setup SSO with WS-Federation (Active Directory with ADFS, Azure Directory etc). Support of SAML2 or custom SSO flow may be added upon request. $499 / year
Team sharing Team owner role for high-powered user(s) who is creating the data and sharing it with others. Team owner can:
  • manage team members
  • share cubes/reports to team members with an access control
Only user who creates and shares cubes/reports need to have this paid subscription; viewers are free accounts. Number of 'viewers' in the team is not limited.
"Team sharing" subscription can be enabled for unlimited number of users with a fixed price.
$299 / user / year
Advanced publishing/embedding Ability to use advanced features for reports published to web (public links):
  • interactive report view: pagination, sort by labels/values, inputs for parameters
  • enable exports (PDF, CSV, Excel etc), extend export limit for rows
  • enable chart legend and hide table below the chart
  • customize styles with CSS rules
  • apply report parameters from the host page without IFRAME reload
  • auto refresh report every N minutes
  • secure embedding of reports/dashboards (JWT auth)
  • app view embedding (JWT auth)
Only users who create and publish the reports need to have this paid subcription. There are no any limitations on the number of 'viewers'.
"Advanced publishing" subscription can be enabled for unlimited number of users with a fixed price.
$299 / user / year
Advanced email subscriptions Manage multiple email subscriptions per report + ability to subscribe others:
  • if user has "Team sharing": members/groups from the team
  • if user has "Admin" rights: an email pattern to match login emails of all registered users
  • just a list of emails (external users)
Request pricing
Audit Log Collects information about all actions in the system performed by end-users: cubes/reports creation, changes (with diffs), report views and actions with reports (filtering, sorting, exports etc), published reports views and actions, errors. Only users with "admin" rights can access this audit trail. Request pricing
Commercial Support / Integration Project It is possible to purchase special support packages to get guaranteed technical support with SeekTable deployment, setup or troubleshooting (including bug fix SLA). Integration services of any kind may be provided by SeekTable outsourcing partner on the 'time & material' basis. Request pricing

Typical installation subscriptions sets:

Goal Subscriptions Total price
Share reports in a secure way with teammates, customers etc
  • PivotData microservice license
  • System/users admin
  • "Team sharing" for 1 'master' user account (manages data sources / shared reports). Viewers are 'free' users.
$1297 / year
= $110/month!
Embed reports into existing web app
  • PivotData microservice license
  • System/users admin
  • White-label mode (hide any mentions of SeekTable + ability to customize styles to match your app UI)
  • "Advanced publishing" for 1 'master' user account (reports designer / publisher). Number of viewers (users in your app) is unlimited!
$2796 / year
= $233/month!

Request 14 Day Trial
Trial period may be extended if you need more time for the decision-making process.