Die Polaris Learning Infrastructure ist eine moderne, skalierbare Plattform zur Unterstützung digitaler Lernumgebungen. Sie ermöglicht die nahtlose Integration verschiedener Lernressourcen, Benutzerverwaltung und Analysefunktionen für ein effektives Lernmanagement.
```mermaid
## Systemvoraussetzungen
graph TD;
Bevor Sie mit der Installation der Polaris Learning Infrastructure beginnen, stellen Sie sicher, dass Ihr System die folgenden Anforderungen erfüllt:
subgraph Polaris
Z[Docker Build]
end
Z[Docker Build] --> A(Ingress);
Z[Docker Build] --> B(Ingress);
subgraph GitLab
B[Container Registry] --> H(Images);
end
subgraph Server
A[Docker Pull] --> D(Traefik);
D[Traefik] --> E(Deployment:Analytics-Engine);
D[Traefik] --> F(Deployment:Rights-Engine);
D[Traefik] --> I(Deployment:Dashboard-SDK);
E(Deployment:Analytics-Engine)---id1[(MongoDB)]
F(Deployment:Rights-Engine)---id1[(MongoDB)]
I(Deployment:Dashboard-SDK)---id1[(MongoDB)]
end
```
# Getting started
Each folder contains one of the components of
## Local Deployment
### Empfohlene Systemanforderungen:
- Betriebssystem: Linux (Debian 11+, Ubuntu 20.04+ empfohlen)
- Prozessor: Mindestens 4 CPU-Kerne (8 empfohlen für größere Installationen)
- Arbeitsspeicher: Mindestens 8 GB RAM (16 GB oder mehr für größere Benutzerzahlen empfohlen)
- Netzwerk: Stabile Internetverbindung für Updates und Container-Downloads
### Login in the docker registry
### Softwarevoraussetzungen:
If you are not already logged in, you need to authenticate to the Container Registry by using your GitLab username and password. If you have Two-Factor Authentication enabled, use a Personal Access Token instead of a password.
- Docker (mindestens Version 20.10)
```bash
- Docker Compose (mindestens Version 1.29)
docker login registry.git.rwth-aachen.de
- Git (für das Herunterladen der Konfigurationsdateien)
```
- cURL oder Wget (für das Abrufen externer Abhängigkeiten)
### Create Docker network
Different containers communicate via a Docker network `web`, which must be created before Docker compose files are executed.
```bash
docker network create web
```
### Create private/public keys and .env
## Installation von Docker und Docker Compose
Falls Docker noch nicht installiert ist, können Sie es auf Debian oder Ubuntu mit folgenden Befehlen einrichten:
Please change all passwords in the configuration file and leave the passphrase empty.
docker compose exec-it scheduler sh -c'scheduler read-configs'
ssh-keygen -b 4096 -f id_rsa
cp .env.sample .env
```
```
### Create visualization token
### Start containers
```bash
```bash
curl -X POST http://localhost:8004/api/v1/provider/visualization-tokens/create --data'{"engines": ["count_h5p_statements", "count_moodle_statements"]}'-H"Content-Type: application/json"
docker compose up -d
```
```
Returns JWT Token for dashboard
Please check whether all services started successfully.
```
```bash
{"token":[JWT_TOKEN]"}
docker compose ps
```
```
### Loading JSON statements
After that you should be able to visit http://localhost:8004/ and see the rights engine.
### Infrastructure overview
It is recommended to import a set of sample statements into the LRS so that the analytics engines can work on this data. Furhtermore, users (user1@polaris.com and user2@polaris.com) can test the data disclousure and data deletion process.
2. Download latest `@polaris/dashboard-sdk-X.X.X.tgz` from registry and `npm install @polaris/dashboard-sdk-1.0.2.tgz` it (TODO: improve with npm login)
2. Update `TOKEN` in `dashboard-example/src/js/app.js`
3. Run `npm run dev`
3. Visit http://localhost:8005/
### (Optional) Filling DB with random statements
## Update Polaris to a newer version
Falls Sie eine neuere Version von Polaris installieren möchten, folgen Sie diesen Schritten. Stellen Sie sicher, dass Sie sich im Verzeichnis befinden, in dem sich Ihre docker-compose.yml-Datei befindet.