This repository contains tools to deploy all components of AI Cockpit.
Components can be deployed with two tools: Docker Compose and Helmfile. Docker Compose runs all components as Docker images and with Helmfile all components are deployed to a Kubernetes cluster.
The following diagram shows an overview of software components as well as a number of versioned artifacts.
Docker compose can be used to run a local setup of all components. Compose scripts are explained in detail here
TL;DR
cd docker-compose
export scenario=traffic
sudo docker compose -f import-demo-docker-compose.yml up
- get secrets from bitwarden:
- get ssh public and private key
- get kubeconfig
- use env-template.sh and create env.sh and add it as source in your console
- use port forwarding to get connection to cluster, e.g.:
ssh -L 16443:localhost:6443 ai-cockpit
- check that port forwarding is running e.g. with
kubectl get all --all-namespaces
With Helmfile you need a running Kubernetes cluster and your KUBECONFIG variable needs to point to an according config. If this is the case, the following command will install all components to namespace aic.
cd helmfile
helmfile diff helmfile.yaml -e aic-dev # check planned changes
helmfile apply helmfile.yaml -e aic-dev
- start pgadmin e.g. via docker compose script in your deployment project and add db connection:
- get postgres credentials from kubernetes secrets
- use port forwarding with ip 0.0.0.0 (e.g. via k9s) to be able to reach postgres port
The components of Starwit's implementation of AI cockpit can be found in the following repositories:
Component | Repository / URI | Description |
---|---|---|
AI Cockpit | https://github.com/starwit/ai-cockpit | Actual Cockpit |
Class library | https://github.com/starwit/starwit-aic-api | Data structures to use APIs |
Transparency API | https://github.com/starwit/starwit-aic-transparency-api | API for transparency functions, holds module information |
sBOM Generator | https://github.com/starwit/sbom-report-generator | micro service to generate sbom reports |
Landing page | https://github.com/starwit/ai-cockpit-landing-page | Landing page for multiple cockpit deployments |
AI Cockpit Runner | https://github.com/starwit/ai-cockpit-runner | Windows app, that runs Cockpit with selected demo data |
Alert viewer | https://github.com/starwit/alert-viewer | Web app to display status of action executions |
Action Executor | https://github.com/starwit/ai-cockpit-action-demo | Sample action executor, including hardware triggering |
For more details about AI Cockpit visit project page: https://www.kicockpit.eu/
This project was partly funded by the government of the federal republic of Germany. It is part of a research project aiming to keep humans in command and is organized by the Federal Ministry of Labour and Social Affairs.
Software in this repository is licensed under the AGPL-3.0 license. See license agreement for more details.