# Installation sur Ubuntu

## Exigences du serveur

Le serveur (ou la machine – ces termes sont presque interchangeables dans ce contexte) doit être équipé de GPU NVIDIA, car AMD n'est pas actuellement pris en charge. L'espace disque minimal requis est de 32 Go ; pour la fiabilité, il est recommandé d'utiliser un SSD plutôt qu'une clé USB. Un minimum de 8 Go de RAM est requis, mais 16 Go offriront une plus grande stabilité. Quant au CPU, le système peut fonctionner avec un Celeron sur un socket 1151, mais pour des performances plus efficaces, envisagez d'utiliser un CPU comme l'i7-6700.

Avant de continuer, il est fortement recommandé de désactiver tout overclocking, y compris la limite de puissance (PL), et de réinitialiser les GPU aux paramètres d'usine. Ensuite, testez la stabilité du système en le soumettant à un stress test, par exemple en testant les GPU avec l'algorithme kawpow et en sollicitant le CPU. Surveillez les températures et assurez-vous que tout fonctionne de manière stable.

Si le système fonctionne de manière stable et que les températures sont dans une plage sûre, passez à l'étape suivante des instructions. Si les températures sont trop élevées ou si des erreurs se produisent, corrigez d'abord ces problèmes – par exemple en améliorant le refroidissement ou en résolvant les erreurs – et assurez-vous d'un fonctionnement stable avant de continuer.

## OS et pilotes recommandés

### Système d'exploitation

* **Ubuntu 22.04 LTS** — recommandé, meilleure compatibilité des pilotes GPU
* **Ubuntu 24.04 LTS** — pris en charge, mais les noyaux 6.16+ peuvent poser des problèmes avec les branches de pilotes plus anciennes (R550 et inférieur)

### Pilotes NVIDIA

| Branche     | Version    | Support CUDA      | Recommandé pour                            |
| ----------- | ---------- | ----------------- | ------------------------------------------ |
| R580 (LTSB) | 580.126.18 | Jusqu'à CUDA 12.8 | La plupart des GPU, stabilité à long terme |
| R590        | 590.48.01  | Jusqu'à CUDA 13.1 | Séries RTX 50, dernières fonctionnalités   |

Installez le pilote recommandé :

```bash
sudo apt install nvidia-driver-580
```

Ou pour les séries RTX 50 :

```bash
sudo apt install nvidia-driver-590
```

### CUDA Toolkit (pour les charges de travail ML/IA)

Les locataires exécutant des charges ML s'attendent à CUDA. Versions recommandées :

| Version CUDA | Pilote min | Statut                                           |
| ------------ | ---------- | ------------------------------------------------ |
| CUDA 12.8    | R570+      | Stable, large prise en charge de l'écosystème    |
| CUDA 13.1    | R590+      | Dernière version, optimisée pour la série RTX 50 |

La plupart des images Docker incluent leur propre runtime CUDA, donc les hôtes n'ont pas toujours besoin d'installer le CUDA Toolkit au niveau du système. Cependant, il est essentiel d'avoir des pilotes compatibles.

## Enregistrement et ajout du serveur

### 1. Allez sur le [site web](http://clore.ai/), inscrivez-vous, connectez-vous et accédez au marché :

<figure><img src="https://img1.teletype.in/files/0e/86/0e86de72-544d-48d8-8d82-cf120e516a81.png" alt=""><figcaption></figcaption></figure>

### 2. **Ajout d'un serveur :** Il y a deux manières d'ajouter un serveur :

**Méthode 1 :** Allez dans la section "Mes serveurs" et cliquez sur le bouton "+Ajouter un serveur". Entrez le nom du serveur et cliquez sur "Suivant".

<figure><img src="https://img4.teletype.in/files/f7/8e/f78e0a46-06fa-4a5d-b429-f21b78eafb6c.png" alt=""><figcaption></figcaption></figure>

Après l'ajout, le serveur sera marqué d'un cercle rouge, ce qui signifie qu'il est inactif. Nous l'activerons plus tard, mais pour l'instant, cliquez sur le serveur créé pour obtenir une clé – vous en aurez besoin plus tard.

<figure><img src="https://img4.teletype.in/files/36/ae/36aeeab8-98e0-4fea-81e9-d731d5211df2.png" alt=""><figcaption></figcaption></figure>

### 3. **Exécutez les mises à jour dans l'ordre :**

```bash
sudo apt update && sudo apt upgrade -y
```

### 4. Installez les dépendances :

```
sudo apt install -y curl git gnupg lsb-release
```

### 5. Passez en mode superutilisateur :

```bash
sudo -i
```

### 6. **Installer le logiciel :**

```bash
bash <(curl -s https://gitlab.com/cloreai-public/hosting/-/raw/main/install.sh)
```

Si le système indique que `git` est manquant, installez-le avec :

```bash
apt install -y git
```

Puis réessayez l'installation.

Si vous rencontrez une erreur `gpg` , utilisez :

<figure><img src="https://telegra.ph/file/e2ef8c5760193ad523e20.png" alt=""><figcaption></figcaption></figure>

```bash
apt install gpg -y --allow-downgrades
```

<figure><img src="https://img3.teletype.in/files/66/1c/661c9073-cc8e-4734-aa85-cff08902d4d6.png" alt=""><figcaption></figcaption></figure>

Ensuite, relancez l'installation.

```
bash <(curl -s https://gitlab.com/cloreai-public/hosting/-/raw/main/install.sh)
```

### 7. **Activer le serveur :**

```bash
/opt/clore-hosting/clore.sh --init-token <token>
```

Remplacez `<token>` par la clé obtenue précédemment.

Si une erreur indique un dossier ou fichier manquant, l'installation ne s'est probablement pas terminée correctement et le dossier `clore-hosting` n'a pas été créé. Dans ce cas, répétez l'installation.

### 8. **Finaliser :**

Redémarrez la machine, attendez un moment et actualisez la page du marché. Si tout a été configuré correctement, le serveur sera marqué d'un cercle vert.

```
sudo reboot
```

<figure><img src="https://img2.teletype.in/files/98/9c/989c1cbd-2670-4568-b784-020af71451be.png" alt=""><figcaption></figcaption></figure>

## Comment désactiver tous les services installés

Si vous devez tout désactiver précédemment installé :

1. Désactivez les services :

   ```bash
   systemctl disable clore-hosting.service
   systemctl disable docker.service
   systemctl disable docker.socket
   ```
2. Redémarrez le système :

   ```bash
   reboot
   ```

## Comment réactiver les services

Pour réactiver les services :

1. Activez les services :

   ```bash
   systemctl enable clore-hosting.service
   systemctl enable docker.service
   systemctl enable docker.socket
   ```
2. Redémarrez le système :

   ```bash
   reboot
   ```

## Suppression du token précédemment installé

Pour supprimer le token, utilisez la commande :

```bash
/opt/clore-hosting/clore.sh --reset
```

Le fichier contenant le token se trouve à :

```
/opt/clore-hosting/client/auth
```
