Bienvenue sur mon blog
Ici, je partage une sélection de projets que j’ai réalisés en tant que développeur web.
Vous y trouverez également des tutoriels et des réflexions inspirés de ces projets. Explorez, apprenez
et laissez-vous inspirer par mon expérience de terrain.
June 30, 2026
ITLa commande DIG : un outil indispensable pour analyser le DNS
La commande dig (Domain Information Groper) est un outil en ligne de commande permettant d’interroger les serveurs DNS afin d’obtenir des informations précises sur un domaine. C’est un utilitaire très utile pour les administrateurs système, développeurs web ou toute personne souhaitant diagnostiquer un problème lié au DNS. Avec dig, il est possible de vérifier rapidement la propagation d’un domaine, analyser les différents enregistrements DNS ou encore contrôler la configuration d’un serveur mail. Pourquoi utiliser dig ? La commande dig permet...
En savoir plus →June 30, 2026
ITBackup tar zst
Introduction Format tar.zst (ZStandard) : est un algorithme de compression moderne développé par Meta, reconnu pour ses excellentes performances. Installation (sous Mac): brew install zstd Décompressions tar --zstd -xvf votre_backup.tar.zst Compression: tar --zstd -cvf votre_backup.tar.zst mon_dossier/ Comparaison de deux sites: diff -rq /chemin/vers/siteA /chemin/vers/siteB Indique les fichiers qui diffère diff -ru /chemin/vers/siteA /chemin/vers/siteB Montre les lignes qui change. Dans VScode Clic droit sur le premier fichier à comparer et choisir Select for Compare Clid droit sur le second fichier Compare...
En savoir plus →Docker Permissions : UID, GID, www-data et pourquoi chmod 777 est une mauvaise idée
Si tu travailles avec Docker sur une stack Laravel, WordPress, Symfony ou toute autre application PHP, tu as probablement déjà rencontré ce genre d’erreurs : Permission denied Failed to open stream Unable to create cache directory file_put_contents(): failed to open stream 403 Forbidden Dans la majorité des cas, le problème ne vient pas de Laravel, PHP ou Nginx. Il vient de la gestion des permissions Linux entre l’hôte et Docker. Et malheureusement, beaucoup de développeurs utilisent la solution rapide :...
En savoir plus →Docker Volumes : Bien choisir entre Volumes Managés et Bind Mounts (Retour d’expérience Laravel + Nginx)
Quand on déploie une application web avec Docker, surtout une stack Laravel + PHP-FPM + Nginx, la gestion du stockage persistant devient rapidement un sujet critique. Entre volumes managés et bind mounts, le mauvais choix peut provoquer : des problèmes de permissions, des conflits entre utilisateurs Docker et système, des fichiers invisibles pour Nginx, ou encore des performances dégradées. Après plusieurs architectures testées en production, voici le meilleur compromis que j’ai trouvé. Comprendre les deux types de volumes Docker 1....
En savoir plus →Installation et mise en place d’un serveur VPS-1 chez OVH
1. Achat du VPS Achat chez OVH d’un VPS-1 avec la distribution Debian 12 et Docker installé. 2. Première connexion SSH Récupérer le mot de passe généré sur l’interface d’OVH et ensuite se connecter en SSH via la commande : ssh debian@IP_DU_VPS Puis créer un nouveau mot de passe sur le VPS. 3. Sécurisation du VPS 3.1 Security update sudo apt update && sudo apt upgrade -y 3.2 Installation des locales sudo apt install locales -y sudo dpkg-reconfigure locales Sélectionner...
En savoir plus →May 9, 2026
Développement Web🎬 Construire un mini Netflix avec Go, gRPC et HLS — architecture moderne de streaming vidéo
Aujourd’hui, on va décortiquer une architecture complète de streaming vidéo inspirée de plateformes comme Netflix, mais simplifiée pour comprendre les briques essentielles : gRPC pour le transport des vidéos Go pour les microservices FFmpeg pour le transcodage HLS pour le streaming adaptatif Un gateway HTTP pour exposer le contenu au navigateur L’objectif : partir d’un fichier vidéo brut et arriver à un streaming lisible dans un navigateur. 🧠 Vue d’ensemble de l’architecture Client Web (HLS.js) ↓ Video Gateway (Go HTTP)...
En savoir plus →Découverte de Go et gRPC — Créer un microservice moderne avec clients multi-langages
Dans cet article, nous allons découvrir : Le langage Go (Golang) Le fonctionnement de gRPC La création d’un serveur gRPC en Go La génération automatique de clients L’utilisation de Docker pour tout orchestrer 1. Introduction à Golang Go est un langage compilé créé par Google. Son objectif principal est de proposer : Un langage simple Une compilation rapide Des performances proches du C Une excellente gestion de la concurrence Go est aujourd’hui massivement utilisé pour : Microservices API haute performance...
En savoir plus →🚀 Mise en place de NativePHP avec Docker, Jump et déploiement iOS
Dans cet article, je vais expliquer en détail la mise en place de NativePHP dans un environnement Docker, les problèmes rencontrés (notamment liés aux hosts internes Docker), ainsi que les différentes stratégies pour tester et déployer une application Laravel en natif sur iOS. 📦 1. Architecture globale L’objectif est d’exécuter une application Laravel dans un environnement Docker tout en permettant à NativePHP de générer une application iOS capable de se connecter à ce backend. Laravel tourne dans un container Docker...
En savoir plus →Mettre en place un déploiement CI/CD Docker pour Laravel avec GitHub Actions
Dans cet article, nous allons voir comment mettre en place un pipeline CI/CD complet pour une application Laravel utilisant Docker, GitHub Actions et un registre d'images Docker (GHCR – GitHub Container Registry). L'objectif est de pouvoir automatiquement : Construire une image Docker de l'application Lancer les tests automatiquement Pousser l'image sur un registre Docker Déployer automatiquement sur un serveur VPS À la fin de ce tutoriel, chaque push sur la branche main déclenchera automatiquement le pipeline complet. 1. Architecture du...
En savoir plus →Introduction à Livewire 3 avec Laravel
Livewire est un framework frontend pour Laravel qui permet de créer des interfaces réactives sans avoir à écrire de JavaScript complexe. Avec Livewire, vos composants PHP interagissent directement avec le navigateur de manière dynamique. Installation de Livewire 3 Pour installer Livewire 3, utilisez Composer : composer require livewire/livewire:^3.0 Ensuite, ajoutez les directives Livewire dans votre layout Blade : <!DOCTYPE html> <html lang="fr"> <head> <livewire:styles /> </head> <body> <livewire:scripts /> </body> </html> Créer un composant Livewire Pour générer un composant Livewire...
En savoir plus →