# Vorinstallierte Python-Bibliotheken im Eliona-System

## Standardmäßig Installierte Bibliotheken

Die folgenden Python-Bibliotheken sind bereits im Eliona-System installiert und stehen für Ihre Skripte zur Verfügung:

* **pytz**: Bietet Unterstützung für Zeitzonen in Python.
* **numpy**: Eine grundlegende Bibliothek für numerische Berechnungen und die Arbeit mit Arrays.
* **pandas**: Eine leistungsstarke Bibliothek für Datenanalyse und -manipulation.
* **keras\_tuner**: Eine Bibliothek zur Hyperparameter-Optimierung für Deep-Learning-Modelle.
* [**python-eliona-api-client2**](https://github.com/eliona-smart-building-assistant/python-eliona-api-client2/tree/master): Ein Python-Client für die Eliona API, der direkt aus dem GitHub-Repository installiert ist. Diese Bibliothek ermöglicht den vollständigen Zugriff auf alle Eliona-Dienste, wodurch Sie problemlos mit den verschiedenen Funktionen und Datenquellen des Eliona-Systems interagieren können.
* **Python 3.12**: Alle Standardmodule und Funktionen der Python-Version 3.12 sind verfügbar. [➔ \[Externer Link\] Python 3.12 Bibliotheken](https://docs.python.org/release/3.12.0/library/index.html)

## Zusätzliche Python-Bibliotheken installieren

{% hint style="info" %}
Falls Sie Bibliotheken benötigen, die nicht standardmäßig installiert sind, können Sie diese selbst in den Grafana-Container (SSR) einspielen. Gehen Sie dazu wie folgt vor:
{% endhint %}

1. **Ins Container-Shell wechseln**\
   Verbinden Sie sich interaktiv mit dem SSR-Container:

   ```bash
   docker exec -it ssr /bin/bash
   ```
2. **Paket installieren**\
   Installieren Sie das gewünschte Python-Paket in das externe Zielverzeichnis:

   ```bash
   pip install --target /ssr/pip_external <Paketname>
   ```

   * Der Parameter `--target /ssr/pip_external` sorgt dafür, dass das Paket in ein beschreibbares Verzeichnis außerhalb der Core-Umgebung installiert wird.
3. **Container neu starten**\
   Damit das neu installierte Paket beim nächsten Skriptlauf verfügbar ist, starten Sie den Container neu:

   ```bash
   docker restart ssr
   ```
4. **Platzverfügbarkeit prüfen**\
   Standardmäßig steht im Verzeichnis `/ssr/pip_external` **1 GB** Speicherplatz zur Verfügung. Stellen Sie sicher, dass genügend freier Speicher vorhanden ist, bevor Sie große Pakete installieren.

{% hint style="warning" %}
Wenn `pip install` mit einem nicht-nullen Rückgabecode endet, muss das nicht automatisch auf einen Fehler hinweisen – sofern keine weiteren Fehlermeldungen angezeigt werden, war die Installation in der Regel erfolgreich.
{% endhint %}
