Sign inSign up

skilja/dashboard

By skilja

•Updated 15 days ago

A configurable dashboard that simplifies accessing different other Skilja web applications.

Image
Machine learning & AI
0

385

skilja/dashboard repository overview

⁠Quick reference

⁠Supported tags and Versioning

Image tags adhere to <major>.<minor>.<patch>.<revision> format.

<major>.<minor>.<patch>.<revision> points to a specific version. <Major>.<Minor> always points to the latest version. This version is compatible with all previous images of the same <Major>.<Minor> version. <latest> always points to the latest version, but such a version might require service and project database schema updates. For loading the latest but compatible version, we recommend to pull a <Major>.<Minor> with

docker pull skilja/dashboard:<Major>.<Minor>

The latest image tag is:



logo

⁠What is the Dashbaord?

The Skilja Dashboard is a centralized web application designed to provide a unified view of your various integrated services. It allows operators to see a list of registered applications, descriptions, and direct links to their respective URLs, serving as a primary navigation hub for your Skilja product suite environment.

⁠How to use this image

The following sample shows how to run the Dashboard container with a basic configuration:

  1. Create a folder on your host machine (e.g., ./dashboard).
  2. Create a file named Dash.envfile.txt in that folder and include your necessary environment variables.
DASHBOARD_SERVICEENDPOINT="http://+:8080"
DASHBOARD_PATHBASE="/dashboard"
DASHBOARD_TITLE="Dashboard"
DASHBOARD_USEFORWARDEDHEADERS=true
DASHBOARD_USEHTTPSREDIRECT=false
DASHBOARD_FEATURE_HIDEDESCRIPTION=false
DASHBOARD_USEHTTPSREDIRECT=false
  1. Create a subdir ('dashboard/apps), where you store your "application registration" JSON files.
  2. Create the needed "application registration" in your sub directory
  3. Open cmd / terminmal, navigate to your dashboard dir and execute the following:
docker pull skilja/dashboard:4.0
docker run -p 8089:8080 \
--env-file Dash.envfile.txt \
-v ./apps:/opt/Skilja/Dashboard/Registry 

⁠... via [docker-compose]

Example docker-compose.yml for skilja/dashboard: (no ENV file but json app )

services:
  Dashboard:
    image: skilja/dashboard:4.0
    ports:
      - "8089:8080"
    environment:
      DASHBOARD_SERVICEENDPOINT="http://+:8080"
      DASHBOARD_PATHBASE="/dashboard"
      DASHBOARD_TITLE="Dashboard"
      DASHBOARD_USEFORWARDEDHEADERS=true
      DASHBOARD_FEATURE_HIDEDESCRIPTION=false
      DASHBOARD_USEHTTPSREDIRECT=false
      volumes:
      # Format is:  <Host_Path_on_your_HOST> : <Path_Inside_Container>
      # Replace ./apps with the actual path to your folder containing JSONs
      - ./apps:/opt/Skilja/Dashboard/Registry
    restart: unless-stopped

Run docker compose up, wait for it to initialize completely, and visit http://localhost:8089/ or http://host-ip:8089 or http://container-ip:8089

⁠HTTPS

You probably noticed that the described sample is not using an SSL certificate. The currently recommended way is to use a Reverse Proxy like NGINX or Traefik.

This sections contains ALL possible applications with their JSONS.

{
	"Title" : "AI Server",
    "Description" : "Application to configure, monitor and test large language models.",
    "URL" : "/aiserver",
    "Version" : "8.0.0"
}
{
    "Title" : "Field Review",
    "Description" : "Web Client to review, validate and manually correct fields and tables of documents.",
    "URL" : "/FieldReview",
    "Version" : "4.0.1"
}
{
	"Title" : "My Application",
    "Description" : "This is my application, that I want to link from the Dashboard",
    "URL" : "/myapppath",
    "Version" : "1.0.0"
}

⁠Environment Variables

The dashboard image uses several environment variables, of which some are required others are optional.

⁠DASHBOARD_SERVICEENDPOINT

The environment variable DASHBOARD_SERVICEENDPOINT sets the URL where the dashboard is exposed locally on the computer.

⁠DASHBOARD_PATHBASE

When not empty, the environment variable DASHBOARD_PATHBASE (PathBase) allows the application to be hosted at the desired base path. This may be necessary when running behind a reverse proxy or in containerized environments. When the base path is configured, the application still continues to be hosted at the root path as well.

For example, to make the application accessible for clients and services at https://server.com/dashboard⁠, set the path base to "dashboard".

⁠DASHBOARD_TITLE

Defines the main title of the dashboard and the title displayed in the browser tab.

⁠DASHBOARD_USEFORWARDEDHEADERS

Possible values are true or false. If you are running behind an SSL offloading service such as traefik, you need to configure the Dashboard to use the forwarded headers provided by that service by setting it to true. Set to false by default.

⁠DASHBOARD_REGISTRY_JSONPATH

The default value is /opt/Skilja/Dashboard/Registry ( if not set). Use a volume mount to manage application registrations outside of the container.

⁠DASHBOARD_FEATURE_HIDEDESCRIPTION

When set to true, this variable hides the description text for all shown application registrations in the UI.

⁠DASHBOARD_USEHTTPSREDIRECT

Set this to false if you use SSL offloading (e.g., via a reverse proxy or load balancer that terminates TLS in front of the container).

Setting this to true requires configuring HTTPS directly within the container. This involves three steps:

1. Expose the HTTPS port (443)

ports:
  - "443:443"

2. Provide a TLS certificate

Mount a certificate (typically a .pfx file) into the container:

volumes:
  - ./certs:/https:ro

3. Configure Kestrel via environment variables

environment:
  DASHBOARD_SERVICEENDPOINT: "https://+:443"
  ASPNETCORE_Kestrel__Certificates__Default__Path: "/https/certificate.pfx"
  ASPNETCORE_Kestrel__Certificates__Default__Password: "<password>"

⁠Other Platforms

The service is also available for Windows installation. Please visit The Partner Portal⁠ or write us an email [email protected]⁠ for more information.

Tag summary

Content type

Image

Digest

sha256:d7341c28c…

Size

96 MB

Last updated

15 days ago

docker pull skilja/dashboard