Test syntax highlighting Web-Soul

Python

# Fonction de test
class WebSoul:
    def __init__(self, nom):
        self.nom = nom
        self.actif = True

    @property
    def description(self):
        return f"Bonjour {self.nom}"

    def afficher(self):
        if self.actif:
            print(self.description)
        else:
            return None

web = WebSoul("Web-Soul")
web.afficher()

Bash

#!/bin/bash

NAME="Web-Soul"
COUNT=3

echo "Bonjour $NAME"

for i in $(seq 1 $COUNT); do
    docker compose up -d
    docker ps
done

PowerShell

$Name = "Web-Soul"
$Count = 3

Write-Host "Bonjour $Name"

if ($Count -gt 0) {
    Get-Process | Where-Object {$_.CPU -gt 10}
}

YAML

services:
  n8n:
    image: n8nio/n8n:latest
    restart: unless-stopped
    environment:
      - N8N_HOST=n8n.example.com
      - N8N_PORT=5678
    volumes:
      - n8n_data:/home/node/.n8n

JSON

{
  "name": "Web-Soul",
  "version": 1,
  "active": true,
  "services": [
    "n8n",
    "ollama",
    "qdrant"
  ],
  "settings": {
    "debug": false,
    "port": 5678
  }
}

PHP

<?php

class WebSoul {
    public string $name;

    public function __construct(string $name) {
        $this->name = $name;
    }

    public function hello(): string {
        return "Bonjour " . $this->name;
    }
}

$site = new WebSoul("Web-Soul");
echo $site->hello();

HTML

<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <title>Web-Soul</title>
</head>
<body>
    <h1 class="titre">Web-Soul</h1>
    <p>Bienvenue sur le site.</p>
</body>
</html>

CSS

.web-soul {
    background-color: #E8DFDF;
    color: #333333;
    margin: 20px;
    padding: 15px;
}

.web-soul .titre {
    font-weight: 600;
}

.web-soul:hover {
    opacity: 0.9;
}

JavaScript

const name = "Web-Soul";

function bonjour(nom) {
    if (nom) {
        console.log(`Bonjour ${nom}`);
    }
}

const site = {
    name: name,
    active: true
};

bonjour(site.name);

SQL

SELECT id, name, email
FROM users
WHERE active = TRUE
  AND id > 10
ORDER BY name ASC
LIMIT 20;

Dockerfile

FROM debian:13

RUN apt-get update && \
    apt-get install -y curl git

WORKDIR /opt/web-soul

COPY . .

CMD ["bash", "start.sh"]

Préparer le serveur

Avant d'installer les différents composants de Web-Soul, il est nécessaire de préparer correctement le serveur qui les hébergera.

Cette étape permet notamment de vérifier le système d'exploitation, de mettre Debian à jour et de créer l'organisation de fichiers qui sera utilisée pour la suite du projet.

1. Vérifier le système

Commencez par vérifier la version de Debian installée :

cat /etc/os-release

Vous pouvez également vérifier le noyau utilisé par le système :

uname -a

Ces deux commandes permettent de confirmer que nous travaillons bien sur le système prévu.

Informations importantes

  • Le système doit être correctement installé.
  • Le serveur doit disposer d'un accès administrateur.
  • Une connexion Internet fonctionnelle est nécessaire.
  • Les commandes doivent être exécutées dans un terminal.

2. Mettre Debian à jour

Commencez par actualiser la liste des paquets disponibles :

sudo apt update

Installez ensuite les mises à jour disponibles :

sudo apt upgrade -y

Si une confirmation vous est demandée, vérifiez attentivement les informations affichées avant de poursuivre.

À retenir : il est préférable de partir d'un système à jour avant d'installer les composants de Web-Soul.

3. Vérifier les ressources disponibles

Avant de poursuivre, il peut être utile de vérifier les ressources matérielles disponibles sur le serveur.

Pour connaître la mémoire disponible :

free -h

Pour connaître l'espace disque disponible :

df -h

Et pour obtenir quelques informations sur le processeur :

lscpu

4. Créer le répertoire du projet

Nous allons utiliser /opt/web-soul comme répertoire principal du projet.

sudo mkdir -p /opt/web-soul

Le répertoire peut ensuite être vérifié avec :

ls -la /opt

Vous devriez retrouver un répertoire nommé :

web-soul

5. Organisation des fichiers

Au fur et à mesure de la construction du projet, plusieurs services seront ajoutés.

Une organisation possible est la suivante :

/opt/web-soul/
├── traefik/
├── ollama/
├── qdrant/
├── n8n/
├── anythingllm/
└── labo/

Chaque répertoire pourra contenir les fichiers nécessaires au service correspondant.

6. Exemple de configuration YAML

Les services Docker seront décrits à l'aide de fichiers YAML.

Voici un exemple volontairement minimal :

services:
  example:
    image: hello-world
    restart: "no"

Dans une configuration réelle, le fichier pourra devenir beaucoup plus complet.

Pourquoi YAML ?

YAML permet de décrire une configuration de manière relativement lisible par un humain tout en restant exploitable automatiquement par les logiciels.

7. Exemple de données JSON

Certains composants pourront également utiliser des données structurées au format JSON :

{
  "project": "Web-Soul",
  "version": "0.5",
  "environment": "production",
  "services": [
    "traefik",
    "ollama",
    "qdrant",
    "n8n"
  ]
}

8. Exemple de script Bash

Un script peut regrouper plusieurs commandes afin d'automatiser une opération :

#!/bin/bash

echo "Préparation de Web-Soul"

sudo apt update
sudo apt upgrade -y

echo "Préparation terminée"

Le fichier pourrait ensuite être rendu exécutable :

chmod +x prepare.sh

9. Exemple de tableau

Service Rôle Technologie
Traefik Reverse proxy Docker
Ollama Exécution des modèles IA Docker
Qdrant Base de données vectorielle Docker
n8n Automatisation Docker

10. Une image dans l'article

Une image peut être insérée entre deux sections du guide.

Illustration de démonstration

L'image pourra naturellement être remplacée par une capture d'écran réelle du serveur ou d'une interface Web-Soul.

11. Un avertissement

Attention : les commandes présentées dans le guide doivent toujours être adaptées au contexte réel du serveur.

Une commande correcte dans un environnement de test peut avoir des conséquences différentes sur un serveur déjà utilisé.

12. Une citation

Un système reproductible commence par une configuration clairement documentée.

13. Un lien interne

Une fois le serveur préparé, l'étape suivante consiste à installer Docker.

Poursuivre avec l'installation de Docker

14. Un lien externe

Pour consulter la documentation officielle de Debian :

Documentation Debian

15. Une liste de contrôle

Avant de poursuivre, vérifiez les points suivants :

  1. Debian est installé et fonctionnel.
  2. Le système est à jour.
  3. L'accès administrateur fonctionne.
  4. Les ressources disponibles ont été vérifiées.
  5. Le répertoire /opt/web-soul existe.

16. Exemple de code HTML

Le guide pourra également présenter du code HTML :

<section class="web-soul">
    <h2>Web-Soul</h2>
    <p>Plateforme IA modulaire.</p>
</section>

17. Exemple de PHP

<?php

function web_soul_version() {
    return "0.5";
}

echo web_soul_version();

18. Exemple JavaScript

const project = "Web-Soul";

function showProject() {
    console.log(project);
}

showProject();

19. Conclusion

Le serveur est maintenant prêt pour la suite du projet.

Cette étape a permis de vérifier le système, de mettre Debian à jour, de contrôler les ressources disponibles et de préparer l'organisation des fichiers.

Nous pouvons maintenant passer à l'installation des composants nécessaires à l'infrastructure Web-Soul.

À retenir

  • Le serveur doit être correctement préparé avant toute installation.
  • Le système doit être maintenu à jour.
  • L'organisation des fichiers doit rester claire.
  • Les configurations doivent être documentées.
  • Les commandes doivent pouvoir être reproduites.

Table des matières

2 réflexions sur “IALB08 | Article cobaye”

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut