# Verfügbare Docker-Images

Wenn Sie bei Clore.ai einen GPU-Server mieten, können Sie aus vorkonfigurierten Docker-Images wählen oder eigene benutzerdefinierte Images verwenden.

## Clore Offizielle Images

Vorgefertigte Images, die von Clore.ai gepflegt und für den dezentralen GPU-Marktplatz optimiert sind.

### Allzweck

| Docker-Image                              | Beschreibung                       | Ports    | Aktualisiert |
| ----------------------------------------- | ---------------------------------- | -------- | ------------ |
| `cloreai/jupyter:ubuntu24.04-v2`          | Jupyter Lab + SSH auf Ubuntu 24.04 | 22, 8888 | Jan 2025 ✅   |
| `cloreai/ml-tools:0.1`                    | Jupyter Lab + VS Code Webserver    | 22, 8888 | Jul 2023 ⚠️  |
| `cloreai/ubuntu20.04-jupyter:latest`      | Ubuntu 20.04 + SSH + Jupyter       | 22, 8888 | Nov 2022 ⚠️  |
| `cloreai/ubuntu-20.04-remote-desktop:1.2` | Ubuntu mit Remote-Desktop-GUI      | 22, 3389 | May 2023 ⚠️  |
| `cloreai/torch:2.0.1`                     | PyTorch 2.0.1 + CUDA               | 22       | Jul 2023 ⚠️  |

### KI/ML Inferenz

| Docker-Image                            | Beschreibung                  | Ports | Aktualisiert |
| --------------------------------------- | ----------------------------- | ----- | ------------ |
| `cloreai/deepseek-r1-8b:latest`         | DeepSeek R1 8B betriebsbereit | 8000  | Jan 2025 ✅   |
| `cloreai/stable-diffusion-webui:latest` | AUTOMATIC1111 SD WebUI        | 7860  | Sep 2023 ⚠️  |
| `cloreai/oobabooga:1.5`                 | Text-Generierungs-WebUI       | 7860  | Aug 2023 ⚠️  |

### Infrastruktur & Mining

| Docker-Image                | Beschreibung                    | Aktualisiert |
| --------------------------- | ------------------------------- | ------------ |
| `cloreai/monitoring:0.7`    | Server-Monitoring-Agent         | Sep 2024 ✅   |
| `cloreai/hiveos:0.4`        | HiveOS-Integration              | Feb 2025 ✅   |
| `cloreai/openvpn-proxy:0.2` | VPN-/Proxy-Weiterleitung        | Feb 2025 ✅   |
| `cloreai/proxy:0.2`         | Port-Forwarding-System          | Jan 2024     |
| `cloreai/automining:0.1`    | Automatische Mining-Einrichtung | Jun 2023 ⚠️  |
| `cloreai/kuzco:latest`      | Kuzco verteilte Inferenz        | Jun 2025 ✅   |
| `cloreai/partner:nastya-01` | Partner-Integrationswerkzeuge   | Apr 2025 ✅   |

> ⚠️ Images, die mit ⚠️ markiert sind, wurden seit über einem Jahr nicht aktualisiert. Für ML-Workloads sollten Sie die **Community-Images** unten in Betracht ziehen, die neuere CUDA- und Framework-Versionen bieten.

## Empfohlene Community-Images

Erprobte Images aus der breiteren AI/ML-Community mit aktiver Wartung und aktuellen Versionen.

### Deep-Learning-Frameworks

| Image                   | Tag                              | Beschreibung                  | Anwendungsfall                      | Ports              |
| ----------------------- | -------------------------------- | ----------------------------- | ----------------------------------- | ------------------ |
| `pytorch/pytorch`       | `2.10.0-cuda13.0-cudnn9-runtime` | Neueste PyTorch mit CUDA 13.0 | Deep-Learning-Training/Inferenz     | 8888 (Jupyter)     |
| `nvidia/cuda`           | `13.1.1-runtime-ubuntu22.04`     | NVIDIA CUDA Runtime           | Benutzerdefinierte CUDA-Anwendungen | -                  |
| `nvidia/cuda`           | `13.1.1-devel-ubuntu22.04`       | CUDA-Entwicklungstools        | Erstellen von CUDA-Projekten        | -                  |
| `tensorflow/tensorflow` | `2.15.0-gpu`                     | TensorFlow GPU-Unterstützung  | TensorFlow-Workflows                | 8888 (TensorBoard) |

### LLM-Inferenz-Engines

| Image                                           | Tag      | Beschreibung              | Anwendungsfall                 | Ports |
| ----------------------------------------------- | -------- | ------------------------- | ------------------------------ | ----- |
| `vllm/vllm-openai`                              | `latest` | Hochleistungs-LLM-Serving | Produktions-LLM-APIs           | 8000  |
| `ghcr.io/huggingface/text-generation-inference` | `3.3.5`  | Hugging Face TGI          | Enterprise-LLM-Serving         | 80    |
| `ollama/ollama`                                 | `latest` | Lokaler LLM-Runner        | Lokale/Edge-LLM-Bereitstellung | 11434 |

### Bildgenerierung

| Image                             | Tag      | Beschreibung                | Anwendungsfall            | Ports |
| --------------------------------- | -------- | --------------------------- | ------------------------- | ----- |
| `goolashe/automatic1111-sd-webui` | `latest` | Stable Diffusion WebUI      | KI-Kunstgenerierung       | 7860  |
| `sinfallas/comfyui`               | `latest` | ComfyUI, knotenbasiertes SD | Erweiterte Bild-Workflows | 8188  |

### Entwicklungsumgebungen

| Image                         | Tag                            | Beschreibung         | Anwendungsfall          | Ports |
| ----------------------------- | ------------------------------ | -------------------- | ----------------------- | ----- |
| `jupyter/tensorflow-notebook` | `latest`                       | Jupyter + TensorFlow | ML-Experimentierung     | 8888  |
| `jupyter/pytorch-notebook`    | `latest`                       | Jupyter + PyTorch    | Deep-Learning-Forschung | 8888  |
| `cschranz/gpu-jupyter`        | `v1.10_cuda-12.9_ubuntu-24.04` | GPU-fähiges Jupyter  | GPU-Computing           | 8888  |

## Auswählen eines Images

### Über die Weboberfläche

1. Gehe zu **Marktplatz** → Server finden → **Mieten**
2. Wählen Sie im Bestellformular **Docker-Image** aus dem Dropdown
3. Wählen Sie aus vorkonfigurierten Optionen oder geben Sie ein benutzerdefiniertes Image ein
4. Konfigurieren Sie freigegebene Ports (durch Kommas getrennt: `8888,7860,8000`)
5. Fügen Sie bei Bedarf Umgebungsvariablen hinzu
6. Bestellung absenden

### Über die API

```json
{
  "image": "pytorch/pytorch:2.10.0-cuda13.0-cudnn9-runtime",
  "ports": [8888, 8000],
  "env": {
    "JUPYTER_ENABLE_LAB": "yes"
  }
}
```

## Benutzerdefinierte Docker-Images

### Unterstützte Registries

* **Docker Hub**: `benutzername/image:tag`
* **GitHub Container Registry**: `ghcr.io/user/image:tag`
* **NVIDIA NGC**: `nvcr.io/nvidia/image:tag`
* **Google Container Registry**: `gcr.io/project/image:tag`

### Beispiele

```bash
# PyTorch neueste mit CUDA 12.1
pytorch/pytorch:2.1.0-cuda12.1-cudnn8-runtime

# NVIDIA CUDA Basis
nvidia/cuda:12.2.0-base-ubuntu22.04

# Hugging Face Transformers
huggingface/transformers-pytorch-gpu:4.35.0

# Benutzerdefiniertes Image
dein-benutzername/mein-ai-modell:v1.0
```

### Anforderungen für benutzerdefinierte Images

* ✅ Muss öffentlich zugänglich sein
* ✅ Sollte NVIDIA-GPU-Unterstützung für GPU-Instanzen enthalten
* ✅ Auf CUDA-fähigen Images basieren für GPU-Beschleunigung
* ✅ Notwendige Treiber und Bibliotheken einschließen
* ⚠️ Große Images (>10GB) können länger zum Herunterladen benötigen

## Port-Konfiguration

Exponieren Sie Ports für Ihre Anwendungen, damit diese von außen erreichbar sind:

| Port  | Gängige Verwendung   | Framework             |
| ----- | -------------------- | --------------------- |
| 22    | SSH-Zugang           | System                |
| 8888  | Jupyter Notebook/Lab | Jupyter               |
| 7860  | Gradio-Oberflächen   | SD WebUI, Gradio-Apps |
| 8000  | API-Server           | vLLM, FastAPI         |
| 3000  | Webanwendungen       | React, Node.js        |
| 8080  | HTTP-Dienste         | Allgemeine Webdienste |
| 11434 | Ollama API           | Ollama                |
| 8188  | ComfyUI-Oberfläche   | ComfyUI               |

### Ports im Bestellformular festlegen

```
8888,7860,8000
```

## Umgebungsvariablen

Geben Sie Konfigurationen an Ihre Container weiter:

### Häufige Beispiele

```bash
# Hugging Face Token
HF_TOKEN=hf_dein_token_hier

# Modellkonfiguration
MODEL_NAME=meta-llama/Llama-2-7b-chat-hf
CUDA_VISIBLE_DEVICES=0

# Jupyter-Konfiguration
JUPYTER_ENABLE_LAB=yes
JUPYTER_TOKEN=dein_sicherer_token

# vLLM-Konfiguration
VLLM_WORKER_MULTIPROC_METHOD=spawn
```

### Sicherheitshinweise

* ❌ Legen Sie keine Geheimnisse in Umgebungsvariablen ab
* ✅ Verwenden Sie temporäre Tokens oder API-Schlüssel
* ✅ Binden Sie Geheimnisse nach Möglichkeit als Volumes ein

## Persistenter Speicher

### Speicherorte

* `/workspace` - Normalerweise während der Mietdauer persistent
* `/root` - Kann beim Neustart des Containers zurückgesetzt werden
* `/tmp` - Temporärer Speicher, nicht persistent

### Beste Vorgehensweisen

* Speichern Sie wichtige Daten in `/workspace`
* Verwenden Sie externen Speicher für Backups (S3, GCS usw.)
* Laden Sie Modelle in persistente Verzeichnisse herunter
* Verwenden Sie Volume-Mounts für große Datensätze

## Beste Vorgehensweisen

### Image-Auswahl

1. **Verwenden Sie aktuelle Tags** - Vermeiden Sie `latest` in der Produktion, bevorzugen Sie versionierte Tags
2. **Wählen Sie geeignete Basis** - Stimmen Sie die CUDA-Version mit Ihrem Framework ab
3. **Berücksichtigen Sie die Image-Größe** - Kleinere Images laden schneller herunter
4. **Prüfen Sie die Wartung** - Bevorzugen Sie aktiv gewartete Images

### Sicherheit

1. **Exponieren Sie nur minimale Ports** - Exponieren Sie nur die Ports, die Sie benötigen
2. **Verwenden Sie Authentifizierung** - Setzen Sie Tokens für Jupyter/Web-Oberflächen
3. **Regelmäßig aktualisieren** - Verwenden Sie aktuelle Image-Versionen
4. **Zugriffe überwachen** - Prüfen Sie, wer sich mit Ihren Diensten verbindet

### Leistung

1. **GPU-Kompatibilität** - Prüfen Sie, ob die CUDA-Version Ihren Anforderungen entspricht
2. **Modelle vorab herunterladen** - Nehmen Sie Modelle in benutzerdefinierte Images auf für schnelleren Start
3. **Container optimieren** - Verwenden Sie Multi-Stage-Builds, minimieren Sie Layer
4. **Cache-Management** - Nutzen Sie Docker-Layer-Caching

## Fehlerbehebung

### Image startet nicht

```bash
# Prüfen Sie, ob das Image existiert und öffentlich ist
docker pull dein-image:tag

# Überprüfen Sie CUDA-Kompatibilität
nvidia-smi
nvcc --version
```

**Häufige Probleme:**

* Image existiert nicht oder ist privat
* Inkompatible CUDA-Version
* Unzureichender Festplattenspeicher
* Falsche Architektur (arm64 vs x86\_64)

### GPU nicht zugänglich

```bash
# Prüfen Sie die GPU-Verfügbarkeit
nvidia-smi

# Testen Sie CUDA im Container
python -c "import torch; print(torch.cuda.is_available())"
```

**Lösungen:**

* Verwenden Sie GPU-kompatible Basis-Images
* Stellen Sie sicher, dass das NVIDIA Container Toolkit verfügbar ist
* Prüfen Sie die Kompatibilität des CUDA-Treibers

### Kann nicht auf exponierte Ports zugreifen

1. Warten Sie, bis der Container vollständig gestartet ist (Logs prüfen)
2. Verifizieren Sie, dass der Dienst im Container läuft: `netstat -tlnp`
3. Prüfen Sie, ob der Dienst an 0.0.0.0 bindet, nicht an 127.0.0.1
4. Bestätigen Sie, dass der Port im Bestellformular freigegeben ist

### Leistungsprobleme

* Verwenden Sie lokalen SSD-Speicher für Modellgewichte
* Optimieren Sie Batch-Größen für den verfügbaren GPU-Speicher
* Überwachen Sie die GPU-Auslastung: `nvidia-smi -l 1`
* Prüfen Sie CPU-/Speicherauslastung: `htop`

## Schnellstart-Beispiele

### Jupyter mit PyTorch bereitstellen

```bash
Image: pytorch/pytorch:2.10.0-cuda13.0-cudnn9-runtime
Ports: 8888
Befehl: jupyter lab --ip=0.0.0.0 --allow-root --no-browser
```

### vLLM-API-Server bereitstellen

```bash
Image: vllm/vllm-openai:latest
Ports: 8000
Env: MODEL_NAME=microsoft/DialoGPT-medium
Befehl: python -m vllm.entrypoints.openai.api_server --model $MODEL_NAME --host 0.0.0.0
```

### Stable Diffusion WebUI bereitstellen

```bash
Image: goolashe/automatic1111-sd-webui:latest
Ports: 7860
Befehl: --listen --api --xformers
```

### Ollama bereitstellen

```bash
Image: ollama/ollama:latest
Ports: 11434
Befehl: ollama serve
# Dann: ollama run llama2 (innerhalb des Containers)
```
