Aller au contenu

Automation

Homelab : Exposition des Services et Automatisation

Après avoir mis en place l’infrastructure de base de mon homelab avec Proxmox, l’étape suivante consiste à exposer les services de manière sécurisée et à automatiser leur déploiement. Pour cela, j’utilise Nginx Proxy Manager comme reverse proxy et Ansible pour l’automatisation. Cette configuration permet d’exposer facilement mes services en HTTPS tout en maintenant une gestion centralisée des certificats SSL. Architecture d’Exposition des Services # Nginx Proxy Manager # Le reverse proxy est installé sur la VM stargate (192.168.1.134) qui sert de point d’entrée pour tous les services exposés. Cette configuration présente plusieurs avantages :

Book Reco : Déploiement et Orchestration

Pour finaliser mon projet de recommandation de livres, j’ai mis en place une stratégie de déploiement basée sur Docker et orchestrée via un Makefile. L’ensemble du système est hébergé dans mon homelab, avec une API accessible à l’adresse https://app.bookfarm.spacesheep.ovh/. Tout est sur le dépôt Github. Architecture de Déploiement # Le déploiement s’articule autour de trois composants principaux : Pipeline de données : Gère la collecte et le traitement des données Microservices : Services de vectorisation, clustering et gestion des images API : Point d’entrée pour les requêtes clients Chaque composant est conteneurisé avec Docker et peut être déployé indépendamment grâce à un Makefile qui orchestre l’ensemble.

Book Reco : Transformation et Stockage des Données

Après avoir mis en place un module de collecte de données à l’aide de Scrapy, la prochaine étape de mon projet de recommandation de livres consiste à traiter, transformer et stocker les données. Cette étape repose sur le module store, qui organise les données collectées et les prépare pour les prochaines phases d’analyse et de modélisation. Tout est sur le dépôt Github. En plus d’optimiser les données, ce module intègre MLflow pour suivre et documenter chaque étape du pipeline, garantissant une traçabilité et une reproductibilité complètes. Je ne vais pas détailler son utilisation dans cette article, un post sera dédié à ce service qui permet à la fois de monitorer et de versionner le service pour empêcher la dérive des modéles ou leur régression potentielle.

Book Reco : Collecte de Données avec Scrapy

Dans le cadre du projet de recommandation de livres, j’ai mis en place un premier module de collecte de données à l’aide de Scrapy. Cette étape est essentielle, car elle permet de récupérer les informations nécessaires depuis une librairie en ligne pour nourrir les futurs algorithmes de recommandation. Ce projet est pensé pour évoluer. À terme, il s’agira d’une application complète de recommandation de livres, mais chaque étape est soigneusement construite pour être modulaire et extensible. Tout est sur le dépôt Github.

Book Reco : Architecture cible

Pour consolider mes compétences en développement, je me suis lancé dans un projet de recommandation de livres. Mon objectif est de concevoir une architecture simple mais modulable, capable de gérer la scalabilité et de rester disponible en continu. Ce projet inclut des phases de collecte de données, de labellisation et de vectorisation, ce qui me permet d’explorer l’ensemble de la stack logicielle, d’utiliser les bibliothèques standard et d’héberger le tout dans mon homelab.