README.md 1.75 KB
Newer Older
abergavenny's avatar
abergavenny committed
1
2
# 3% Plus Tool

abergavenny's avatar
abergavenny committed
3
![alt_text](https://transfer.hft-stuttgart.de/gitlab/3_percent_plus/ap4_2/-/raw/release-v1.0.0/client/images/desktop.png)
Matthias Betz's avatar
Matthias Betz committed
4

abergavenny's avatar
abergavenny committed
5
6
7
8
9
10
11
12
13
14
15
## .env
```
MONGO_ROOT_USER=
MONGO_ROOT_PASS=
DATABASE_NAME=dreiprozentplus
DATABASE_USER=
DATABASE_PASS=
MAIL_HOST=
MAIL_PORT=
MAIL_USER=
MAIL_PASS=
abergavenny's avatar
abergavenny committed
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
```
DATABASE_NAME, DATABASE_USER, DATABASE_PASS müssen identisch mit den Werten der ***./db/init-mongo.js*** Datei sein.

## Information
Es befinden sich Kommentare zur Beschreibung im Code, einfach nach DEVINFO suchen.  

Die REST API besitzt einen Endpoint der das CS-T Nutzt, hier kann eine Simulation über das 3% Plus Tool ausgeführt werden. Die Ergebnise werden in der MongoDB gespeichern und sind ebenfalls über die REST API abrufbar.  

Für die Nutzung der "Passwort vergessen" und "E-Mail-Bestätigung" Funktionen muss ein entsprechender Mailserver bwz. Zugangsdaten verfügbar sein.  
Die Funktion zur E-Mail-Bestätigung kann über die ENV-Variable EMAIL_VERIFICATION=on|off ein- oder ausgeschaltet werden. Dies gilt nicht für die "Passwort vergessen" Funktion, diese ist dauerhaft aktiv.  

Die ENV-Variable DB_HOST muss den Namen des MongoDB Containers verwernden. (Default v1.0.0: database)

## Docker Container erstellen
Zuerst muss ein BUILD des Clients erfolgen, hierfür einfach die Befehle in Folge ausführen. (im Ordner ***./client***)
```
npm install
```
```
npm run build
```
Dann kann können die Container mittels Docker Compose (***v2***) erzeugt und gestartet werden.
```
docker compose up -d [--build]
```
Um die Container zu stopppen den Befehl folgenden ausführen
```
docker compose down [-v]
```
> - -d Als Daemon starten
> - --build Neuen Build der Container erzeugen
> - -v Volumes mit entfernen (***Vorsicht!*** Datenbank Volume wird hier ebenfalls gelöscht)