Architecture de ma plateforme Web

Peut-être aviez-vous remarqué que j’avais laissé les informations à propos du thème et de l’hébergement de mon site dans mon pied de page. Ce n’est pas une erreur ni un oubli, c’est simplement pour renforcer le fait que je suis fier d’utiliser ces technologies qui m’ont grandement aidé à développer ma plateforme.

Centré sur l’Open Source

Le site Web sur lequel j’écris ces lignes a été créé à l’aide d’un système de gestion de contenu nommé WordPress. En plus d’être gratuit, WordPress est Open Source (sous licence GPL-2.0+). Je peux donc l’utiliser et le modifier librement à condition de faire bénéficier la communauté des versions modifiées. Le thème que j’ai utilisé (Sparkling par Colorlib) utilise lui aussi la licence GNU (GPL-3.0). J’ai cependant créé un thème enfant à partir de celui-ci, simplement pour en modifier les couleurs sans bloquer les mises à jour potentielles du thème (la communauté ne peut pas bénéficier de mon thème enfant, car il ne fait que modifier le CSS de manière plus élégante, mais sans se fier aux options du thème).

Hébergement Open Source

Ce site WordPress est hébergé sur un serveur virtuel (plus précisément un conteneur Linux) TurnKey Linux qui est, encore une fois, sous licence GPL3. Ce conteneur Linux est « virtualisé » par Proxmox VE, un Hyperviseur Linux sous licence AGPLv3. Toutes les requêtes Web sont reçues par un autre conteneur Linux provenant d’une autre mouture de TurnKey Linux soit : Nginx PHP FastCGI Server Configuration.

Extension Open Source

En plus de mon site WordPress, j’ai créé mon propre Cloud personnel en utilisant un autre modèle de conteneur Linux Nextcloud par TurnKey Linux. Ce système permet de stocker des fichiers pouvant être très volumineux et de les partager comme je l’ai fait pour mon modèle 3D de bouchon USB pour Speed Booster au format STL.

Représentation graphique simplifiée

Les conteneurs Linux sous l’hyperviseur Proxmox VE
*En pointillé : Requêtes Web

En résumé, mon autohébergement est complètement gratuit (en excluant le coût de ma connexion Internet) et repose entièrement sur des technologies Open Source (excepté mon ordinateur usagé qui n’est pas constitué de matériel libre).

FAQ

  • Pourquoi utiliser un conteneur Linux (CT – Container) par rapport à une machine virtuelle (VM – Virtual Machine) conventionnelle ?
    • Les containers sont beaucoup plus rapides à créer, à démarrer et à modifier (espace disque, quantité de mémoire, nombre de processeurs) vu qu’ils utilisent le même kernel Linux que l’hyperviseur.
    • Concernant les templates TurnKey, ils permettent de créer un environnement sécuritaire contenant tout le nécessaire pour un projet particulier en quelques étapes rapides.
    • Vu qu’ils sont plus faciles à gérer, on peut en utiliser plusieurs afin d’exécuter des tâches spécifiques, cela rend les différentes sauvegardes plus efficaces et légères.