Vue normale

Nginx Proxy Manager - Le reverse proxy que même ma grand-mère pourrait configurer

Par : Korben
3 février 2026 à 07:48

L'autre jour, je voulais juste exposer un petit service tournant sur mon NAS pour y accéder à distance quand je suis en déplacement. Alors je me suis dit "Allez, je vais faire ça propre avec Traefik" mais bon, debugger du fichier YAML parce qu'on oublie des indentations à un moment ça casse la tête. J'ai +40 balais et pas que ça à foutre.

Si vous hébergez vos propres services à la maison (self-hosting powaaaah !) et que vous êtes un peu bordélique comme moi, vous installez un truc, puis un autre, et vous finissez avec une collection de ports impossible à mémoriser du genre monip:8080, monip:32400, monip:9000… Aarrgh, l'enfer !!!

Et ne me lancez pas sur la gestion des certificats SSL !! Si vous voulez faire ça bien, faut générer des certificats Let's Encrypt à la main pour chaque service, modifier les fichiers de conf Nginx en priant pour ne pas oublier un point-virgule… et j'en passe et des pas mûres… Alors je sais, oui ça nous occupe et pendant ce temps là, on n'est pas dehors en train de voler des voitures mais j'sais pas vous, moi j'ai mieux à faire.

Hé bien, figurez-vous les copains, qu'il existe un outil qui transforme ce cauchemar en promenade de santé. Ça s'appelle Nginx Proxy Manager, et une fois que vous aurez lu mon article et testé vous penserez : "Mais pourquoi je me suis emmerdé la vie pendant tout ce temps, mortecouille ?!".

Nginx Proxy Manager, c'est quoi ce truc ?

En gros, c'est une interface graphique super propre pour gérer Nginx. Au lieu de taper des lignes de commandes et d'éditer des fichiers de config obscurs, vous avez un beau tableau de bord pour :

  1. Rediriger vos domaines (ex: plex.mondomaine.fr) vers vos conteneurs Docker.
  2. Gérer vos certificats SSL (HTTPS) automatiquement.
  3. Sécuriser l'accès à certains services avec un mot de passe.

Mais en vrai, c'est plus riche que ça. Dans la barre du haut, vous avez tout ce qu'il faut pour piloter votre reverse proxy comme un adulte responsable : des hosts (proxy, redirections, streams, 404), des certificats (Let's Encrypt ou certifs locaux), des utilisateurs, des règles d'accès (Access Lists), et même des logs d'audit pour savoir qui a fait quoi (au cas où un de vos potes "teste un truc vite fait" et casse tout).

C'est le reverse proxy pour ceux qui veulent que ça marche, tout de suite, sans devenir ingénieur réseau bac+12 ou devoir se taper 2h d'explications IRL d'un barbu qui pue de la gueule ^^.

Installation en 3 minutes chrono (avec Docker)

Bon, on ne va pas y passer la nuit. La méthode la plus propre, c'est évidemment Docker Compose. Si vous ne l'avez pas, installez-le (allez, un petit apt install docker-compose et on n'en parle plus).

Créez un dossier nginx-proxy-manager et collez-y ce fichier docker-compose.yml :

version: '3.8'
services:
 app:
 image: 'jc21/nginx-proxy-manager:latest'
 restart: unless-stopped
 ports:
 - '8080:80' # Port HTTP public
 - '8181:81' # Port d'administration (à garder pour vous)
 - '8443:443' # Port HTTPS public
 volumes:
 - ./data:/data
 - ./letsencrypt:/etc/letsencrypt
 db:
 image: 'jc21/mariadb-aria:latest'
 restart: unless-stopped
 environment:
 MYSQL_ROOT_PASSWORD: 'npm'
 MYSQL_DATABASE: 'npm'
 MYSQL_USER: 'npm'
 MYSQL_PASSWORD: 'npm'
 volumes:
 - ./mysql:/var/lib/mysql

Petit piège à éviter : Faites gaffe si vous avez déjà un serveur web (Apache ou Nginx) qui tourne sur la machine hôte. Il va falloir couper le service ou changer les ports, sinon Docker va vous jeter une erreur parce que le port 80 est déjà pris. Du coup, vérifiez bien avec un petit netstat -tulpn | grep 80 avant de lancer la sauce.

Ah oui, et si vous utilisez un pare-feu comme UFW (ce que je vous recommande chaudement), n'oubliez pas d'ouvrir le port 81 : ufw allow 81. Sinon, vous allez pleurer devant une page blanche et vous demander pourquoi ça marche pas.

Ensuite, lancez la bête :

docker-compose up -d

Et voilà ! C'est tout. Votre serveur tourne. Si vous avez des erreurs, c'est probablement parce que vos ports sont déjà utilisés. Ou que les dossiers data, Let's Encrypt et MySQL n'existent pas encore. Moi j'ai ça sur mon NAS :

La configuration que même ma grand-mère pourrait le faire

Ouvrez votre navigateur et allez sur http://votre-ip:8181 et créez vous un compte.

Une fois dedans, pour exposer un service, c'est ridicule tellement c'est easyyyy

  1. Cliquez sur "Add Proxy Host".
  2. Entrez votre nom de domaine (ex: nextcloud.mondomaine.fr).
  3. Indiquez l'IP de la machine et le port du service (ex: 8080).
  4. Allez dans l'onglet "SSL", cochez "Request a new SSL Certificate" et "Force SSL".
  5. Sauvegardez.

En fait, le seul truc qui peut coincer, c'est la propagation DNS. Si vous venez d'acheter votre nom de domaine il y a 5 minutes, pas de panique si Let's Encrypt refuse de générer le certificat. Attendez une petite heure et réessayez. C'est classique.

Et hop, fini. Votre service est accessible en HTTPS, avec le petit cadenas vert qui va bien. Nginx Proxy Manager s'occupe de discuter avec Let's Encrypt et de renouveler le certificat tout seul. C'est carrément magique.

Tour d'horizon des fonctionnalités qui sauvent des week-ends

Parce que oui, Nginx Proxy Manager ne fait pas "juste" proxy + "cadenas". Dans le menu Hosts, vous avez plusieurs types de trucs à créer, et chacun sert à un usage bien précis. Et côté Certificats et sécurité, il y a de quoi faire sans sortir le marteau-piqueur.

Certificats Let's Encrypt (HTTP et DNS) + certifs locaux

On va commencer par le sujet qui donne des boutons : les certificats. Dans l'onglet Certificates, vous pouvez gérer tout ça au même endroit :

  • Let's Encrypt en HTTP-01 : le classique. NPM ouvre la voie, répond au challenge, et basta. Pratique pour un service.mondomaine.fr exposé "normalement".
  • Let's Encrypt en DNS-01 : là, c'est le mode "j'ai compris la vie". Vous pouvez valider le certificat via votre DNS (donc sans dépendre d'un port 80 accessible), et surtout ça permet les wildcards du style *.mondomaine.fr. Donc un seul certif et roule ma poule, même si vous ajoutez 12 sous-domaines demain à 3h du mat.
  • Certificats locaux : vous pouvez aussi importer un certificat existant (genre un certif de votre boîte, un truc interne, un CA maison, ou même un self-signed si vous aimez vivre dangereusement). Ça évite de dépendre de Let's Encrypt si vous êtes en mode "tout en local, rien sur Internet".

Et le meilleur c'est que NPM gère le renouvellement automatique. Donc plus de rappel calendrier "renouveler les certifs" tous les 2 mois, sinon c'est le drame et tout le monde vous écrit "ça marche plus ton truc".

Plusieurs comptes, parce que tout le monde n'est pas "admin"

Dans Users, vous pouvez créer plusieurs comptes pour accéder à l'interface. Typiquement :

  • un compte admin pour vous, le chef, le patron, le seigneur des reverse proxies.
  • un compte "moins dangereux" pour quelqu'un qui doit juste consulter ou bidouiller un truc sans toucher à toute l'infra.

Et ça, couplé aux Audit Logs (j'y reviens juste après), c'est très pratique quand plusieurs personnes mettent les mains dedans. Parce que "c'est pas moi, j'ai rien touché" est une phrase universelle, on la retrouve dans toutes les cultures.

Access Lists, le videur à l'entrée

Alors ça, c'est une des fonctions les plus sous-cotées. Les Access Lists permettent de mettre en place des règles d'accès et de les réutiliser partout :

  • Basic Auth (login/mot de passe) : parfait pour protéger une appli pas prévue pour être publique, ou un petit outil d'admin que vous ne voulez pas exposer "en clair".
  • Allow/Deny par IP : le top pour dire "seulement depuis mon IP / mon VPN / mon réseau". Et là, même si quelqu'un devine votre URL, il se prend un mur.

Vous créez une Access List une fois, et ensuite vous l'appliquez à vos Proxy Hosts. Du coup, pas besoin de refaire 50 fois la même conf. C'est propre, c'est net, c'est carré.

Les redirections propres (HTTP -> HTTPS, domaine A -> domaine B, etc.)

Besoin de rediriger un vieux domaine vers un nouveau ? Ou de faire un joli http:// qui part systématiquement en https:// ? Les Redirection Hosts servent exactement à ça. C'est bête mais ça évite d'aller trifouiller des règles Nginx à la main.

Exemples typiques :

  • mondomaine.fr -> www.mondomaine.fr
  • ancientruc.mondomaine.fr -> nouveautruc.mondomaine.fr
  • http -> https (pour les retardataires)

Streams - Quand ce n'est pas du HTTP mais que vous voulez quand même un reverse proxy

Le web, c'est bien, mais tout n'est pas en HTTP. Certaines applis parlent en TCP/UDP (bases de données, services réseau, protocoles chelous, etc.). C'est là que Streams entrent en jeu. Cette fonctionnalité vous permet de proxyfier des flux réseau, genre "ce port externe pointe vers ce port interne".

Alors oui, c'est plus "brut" que les Proxy Hosts, mais ça dépanne vraiment quand vous avez un service qui n'a rien à faire derrière un vhost HTTP. Et ça se configure aussi en 2 clics, sans incantations démoniaques.

404 Hosts - La sortie de secours

Les 404 Hosts, c'est la petite finition qui fait plaisir (non, rien à voir avec votre salon de massage préféré). Vous pouvez définir un "host poubelle" qui répond proprement quand quelqu'un tape un domaine qui n'existe pas chez vous, ou quand un bot scanne votre serveur en espérant trouver /phpmyadmin par magie.

Au lieu de laisser traîner une réponse moche ou ambiguë, vous renvoyez une 404 nette, propre, assumée. C'est pas de la sécurité absolue, mais c'est une bonne hygiène, et ça évite de donner trop d'infos aux curieux.

Audit Logs

Dans Audit Logs, vous avez l'historique des actions effectuées dans l'interface : création/modif de hosts, changements de certifs, etc. C'est le genre de truc dont on se fout… jusqu'au jour où on en a besoin. Et là, vous êtes content de pouvoir remonter le film de l'horreur.

Et enfin, mon bonus : Le mode "je sais ce que je fais" (les options avancées Nginx)

Et si un jour vous voulez aller un cran plus loin, NPM permet aussi d'ajouter des réglages plus "Nginx pur jus" par host (headers, règles, conf custom). Donc vous commencez en mode clic-clic, et si vous devenez un peu psycho sur l'optimisation, vous pouvez aussi affiner. Sans tout casser, normalement.

2/3 conseils de daron pour éviter les boulettes

  • Ne laissez pas l'admin ouvert au monde : le port 8181 (ou votre port d'admin) c'est "pour vous". Si possible, limitez-le via pare-feu / VPN / IP autorisées. C'est le panneau de commande de votre château, pas un distributeur de bonbons.
  • Utilisez les Access Lists pour tout ce qui est sensible : dashboards, outils d'admin, services pas prévus pour Internet, etc.
  • Pensez au DNS-01 si vous voulez des wildcards ou si vous n'avez pas envie d'exposer le port 80.

Et par rapport aux autres ?

Je vous vois venir les puristes : "Oui mais Traefik c'est mieux car c'est dynamique". C'est vrai. J'ai testé Traefik, et c'est une tuerie pour les environnements qui bougent tout le temps. Mais sa config en YAML peut vite devenir une usine à gaz si vous débutez. Caddy est top aussi (un seul fichier de conf), mais il faut quand même mettre les mains dans le cambouis.

Perso, je pense que Nginx Proxy Manager est un excellent choix pour un homelab par exemple. C'est un peu le choix du confort, celui des grosses feignasses comme moi parce que c'est visuel, c'est du clic-bouton clic clic, et pour un petit serveur perso, c'est franchement imbattable.

Bref, si vous galérez encore avec vos vhosts Nginx, arrêtez de vous faire du mal. Installez ça, et profitez de la vie (et de vos week-ends).

Nginx Proxy Manager c'est par ici !

WSL Manager – Gérez vos distributions Linux sous Windows sans toucher au terminal

Par : Korben
2 février 2026 à 09:14

Vous utilisez WSL sous Windows mais vous en avez marre de devoir jongler avec les commandes PowerShell dès qu'il s'agit de gérer vos distributions ?

C'est vrai que taper du wsl --import ou du wsl --unregister à chaque fois qu'on veut tester une nouvelle instance, ça finit par être un peu lourd.

Heureusement, y’a un dev, Eric Trenkel (alias bostrot), qui a eu la bonne idée de sortir WSL Manager (qu'on connaissait aussi sous le nom de WSL2 Distro Manager), une interface graphique complète pour piloter tout ça sans se faire mal au terminal.

Cette application, développée avec Flutter offre une vue d'ensemble sur toutes vos instances WSL installées. Ainsi, en un clic, vous pouvez les démarrer, les arrêter, les renommer ou même changer leur version.

Mais là où l'outil excelle, c'est dans sa capacité à importer de nouveaux environnements. Pour ceux qui se demandent comment ça se passe pour récupérer des distributions exotiques, sachez que WSL Manager permet de télécharger et d'utiliser n'importe quelle image Docker comme base pour une instance WSL, et ce, sans même avoir besoin d'installer Docker Desktop sur votre machine.

Par exemple si vous voulez un Alpine minimaliste pour du test ou un Kali pour du pentest, vous l'importez direct depuis les registres Docker et hop, vous avez un nouveau système prêt à l'emploi.

C'est d'ailleurs un excellent complément à des outils comme DockStation si vous voulez garder une approche visuelle de vos conteneurs, ou même WinBoat pour faire tourner du Windows dans Docker. L'application propose aussi des "Quick Actions", qui sont en gros des petits scripts prédéfinis que vous pouvez exécuter directement sur vos instances pour automatiser les tâches répétitives. Vous pouvez également lancer directement Windows Terminal ou VS Code dans la distribution de votre choix en un seul clic.

Si ça vous branche, plusieurs options s'offrent à vous pour l'installer. Comme le projet est open source sous licence GPL-3.0, vous pouvez récupérer les exécutables gratuitement sur la page GitHub du projet.

Il existe aussi une version sur le Microsoft Store et notez aussi que bien que des paquets winget ou Chocolatey existent, ils sont souvent maintenus par la communauté et pas forcément à jour, donc privilégiez le téléchargement direct ou le Store pour être tranquille.

Voilà, si vous passez vos journées sous Linux tout en restant dans l'écosystème Microsoft, WSL Manager c'est le feu et ça permet de se concentrer sur son boulot plutôt que sur la syntaxe des commandes de gestion système.

Merci à Lorenper pour la découverte !

Dockhand : gestionnaire Docker léger et puissant

Par : Aerya
27 janvier 2026 à 10:14

Passé par Portainer, Komodo, Dockge et plus récemment Arcane, j’ai toujours pas trouvé LE gestionnaire de Docker qui me convienne : léger, permettant de gérer au moins 3 machines, intuitif tout en restant complet, qui gère les MàJ des Dockers, acceptant directement des compose, etc.

Depuis quelques jours maintenant j’utilise Dockhand (GitHub) et ça coche toutes les cases ; même plus puisqu’il a en option notamment des notifications différenciées et les outils Trivy et Grype pour scanner les dockers à la recherche de vulnérabilités. De mémoire j’avais présenté le 1er y’a des années sur le blog « perdu » effacé par un bon gros blaireau…

Pour le coup je le trouve très bien pensé, avec plus un œil de « geek » que de professionnel si je puis dire. Avec en prime une roadmap et un super Wiki qui va à l’essentiel.

dockhand1
dockhand2

J’ajoute l’environnement local via socket directement.

dockhand3
dockhand4
dockhand5
dockhand6
dockhand7
dockhand8
dockhand9
dockhand10
dockhand11
dockhand12
dockhand13

On peut ajouter des registres avec ses comptes comme DockerHub et GitHub

dockhand14

C’est tout bête mais j’aime bien la possibilité de choisir ses thèmes. Ça me rappelle un peu https://catppuccin.com/ports/

dockhand15
dockhand16

Puisque j’ai lié mon compte GitHub je peux importer mes repos, y compris les privés.

dockhand17

Comme souvent, on peut créer des templates d’installations Docker. J’ai jamais utilisé. Le seul cas, dans mon contexte, où ça pourrait éventuellement être potentiellement utile 2 ou 3 fois (na, pas du tout) ce serait pour créer une template pour les arrs/decypharr etc avec les volumes pré-définis. On est d’accord, j’en n’ai aucune utilité. Mais y’a l’option.

dockhand18

Pour les notifications, je me suis mis Discord. Et on verra après que je ne les utilise que dans le cas des MàJ pour l’instant. Je ne fais pas de MàJ auto pour tous mes Dockers, je suis du coup informé quand y’a une MàJ à faire ou quand celles en automatique ont été réalisées (ou ont échoué).

dockhand20
dockhand19

C’est uniquement en LAN chez moi, j’ai pas testé l’authentification.Idem pour l’ajout de serveurs (Syno et ZimaOS pour l’instant), j’ai utilisé Hawser vu que je suis sur mon réseau.

dockhand21

Et j’obtiens la vue d’ensemble de mes machines

dockhand22

Comme je le disais au début de l’article, j’ai été agréablement surpris de voir l’intégration de Trivy et Grype, sur option, qui permettent de scanner chaque image installée.

Ici l’exemple de mon serveur AdGuardHome que je voulais changer de machine : imthai/adguardhome-unbound-redis

dockhand23
dockhand24

Les vulnérabilités trouvées sont indiquées pour chaque agent avec le lien vers le CVE. Si l’option de scan est globalement activée alors les updates seront aussi scannées. Et on peut à tout moment lancer un scan depuis la liste des images via l’icône de bouclier.

Si tous les Dockers d’une machine seront reportés dans Dockhand, on ne pourra évidemment y éditer que ceux lancés via l’outil.
Pour se faire on peut utiliser la méthode « guidée » où on pull une image et on la gère de manière guidée.

dockhand33
dockhand34
dockhand35
dockhand36

Ou bien on peut importer des stacks/compose depuis un serveur (bouton Adopt) mais j’ai pas testé.

dockhand37

Ou enfin, le plus simple dans mon cas, on peut ajouter son compose directement. On peut même importer son .env
Désolé du caviardage mais j’ai réalisé après coup que je montrais un truc personnel.

dockhand38

Il est également possible d’importer des dépôts depuis les registres configurés

dockhand28

Dockhand permet bien sûr de créer et gérer tous les types de réseaux

dockhand30
dockhand39

Après ces tests, même si c’est toujours en gros développement, je trouve ça plus abouti qu’Arcane, plus simple que Komodo et ça répond plus à mes besoins que Portainer.
C’est une belle découverte que je vais conserver.

Loading

Alexandrie - L'app de notes qui garde vos données chez vous

Par : Korben
27 janvier 2026 à 07:43

Si vous en avez marre de confier vos notes perso à Notion ou Evernote et que vous voulez reprendre le contrôle de vos données, Alexandrie va vous plaire ! C'est une app open source française qui permet de prendre des notes en Markdown au travers d'une interface plutôt moderne, tout en gardant vos données là où vous voulez qu'elles soient : Chez vous.

Alexandrie, c'est avant tout un éditeur Markdown amélioré qui vous permet d'organiser vos notes par workspaces, catégories et tags. L'interface est clean, la recherche instantanée, et vous pouvez exporter vos notes en PDF ou Markdown !

Ce qui est cool, c'est que l'app fonctionne aussi hors ligne grâce à la technologie PWA. Vous pouvez donc bosser sur vos notes dans le train ou l'avion, et tout se synchronise dès que vous avez du réseau. Et si vous voulez partager des notes avec d'autres personnes, y'a un système de permissions pour gérer qui peut voir et modifier quoi.

Côté technique, Alexandrie tourne sur Vue/Nuxt pour le frontend et Go pour le backend, avec une base MySQL et un stockage compatible S3 et comme d'hab, tout ça se déploie avec un simple "docker compose up".

La grosse différence avec Notion ou Obsidian, c'est que vous contrôlez tout. Vos données restent sur votre serveur ou votre machine, rien ne transite par des serveurs américains. C'est donc de l'auto-hébergé, 100% hors ligne si vous voulez, et c'est compatible avec plein d'autres apps Markdown si vous souhaitez migrer plus tard.

C'est bien de voir une app française qui mise sur la souveraineté des données plutôt que sur le cloud américain ! C'est en train de devenir quelque chose de très recherché en ce moment. Bon après, faut être prêt à gérer soi-même l'hébergement, mais avec Docker c'est pas la mer à boire non plus.

Et si vous appréciez ce genre de découvertes, vous pouvez me soutenir sur le Patreon de Korben .

Voilà, si vous cherchez une alternative open source à Notion qui respecte votre vie privée, c'est par ici .

Portracker - Fini le bordel des ports qui plantent vos déploiements

Par : Korben
26 janvier 2026 à 08:00

"Merde, le port 8080 est squatté par quoi encore ???"

Si vous touchez un peu à l'auto-hébergement ou que vous gérez plus de trois services sur un serveur, vous avez forcément déjà hurlé cette phrase devant votre terminal. C'est le grand classique... on lance un nouveau conteneur, ça plante, et on finit par passer 20 minutes à faire des netstat ou des lsof pour comprendre qui fait la loi sur le réseau. Bref, c'est le bordel, et c'est exactement là que Portracker entre en scène pour nous sauver la mise.

Développé par Mostafa Wahied, Portracker n'est pas un énième scanner de ports réseau agressif façon Nmap, mais plutôt une vigie interne pour vos machines. C'est un outil auto-hébergé qui va scanner son propre hôte pour cartographier en temps réel (enfin, avec un rafraîchissement périodique réglable, généralement toutes les minutes) tous les services qui tournent et les ports qu'ils occupent. L'idée, c'est d'avoir une vue propre et centralisée pour dégager ce vieux tableur Excel que vous oubliez de mettre à jour une fois sur deux.

Le truc est super bien foutu, surtout pour les fans de Docker. Pour ceux qui se demandent comment ça se passe sous le capot, l'outil fait intelligemment la distinction entre les ports internes d'un conteneur et ceux qui sont réellement exposés sur l'hôte.

Alors oui, ça marche comment pour mapper tout ça ? En gros, ça utilise les API natives pour voir que votre instance Ghost est sur le 2368 en interne mais ressort sur le 8080 à l'extérieur. C'est le genre de truc qui évite bien des migraines quand on commence à empiler 50 conteneurs. Il y a même un support aux petits oignons pour TrueNAS pour les amateurs de NAS costauds.

Côté dashboard, c'est du propre puisqu'on est sur une interface moderne avec React, Tailwind et Shadcn UI, avec un mode sombre (évidemment) et des filtres en live qui répondent au quart de tour.

Mais la vraie force de Portracker, c'est sa capacité à bosser en meute. Vous pouvez connecter plusieurs instances entre elles via un système de "Peers" (en peer-to-peer donc) pour tout centraliser sur un seul tableau de bord. Pratique si vous avez un serveur chez vous, un VPS chez OVH et une vieille machine qui traîne dans un placard. Vous pouvez même organiser ça avec une hiérarchie parent-enfant pour mapper vos machines virtuelles sous leurs hôtes physiques respectifs.

Techniquement, c'est du solide mais ça reste léger : du Node.js avec Express et des WebSockets pour le backend, et une base SQLite (via better-sqlite3) embarquée pour ne pas avoir à se fader la conf d'une base externe. Pour le déploiement, ça se passe via Docker et pour les paranos de la sécurité (je vous vois ^^), sachez que l'outil supporte désormais l'utilisation d'un Docker Socket Proxy (genre celui de Tecnativa). Ça permet d'éviter de filer les droits root sur votre socket Docker à n'importe qui. Et depuis la version 1.2.0, vous pouvez même verrouiller l'accès avec une vraie authentification.

Notez que pour fonctionner correctement et aller fouiller dans les entrailles du système, l'outil a besoin de certaines permissions (les fameuses capabilities Linux). Il lui faudra généralement SYS_PTRACE, et éventuellement SYS_ADMIN si vous le faites tourner sur Docker Desktop ou macOS. C'est le prix à payer pour avoir une visibilité totale sur ce qui se passe dans les tuyaux.

Le projet cartonne pas mal sur GitHub et la communauté est super active donc si vous en avez marre de jouer à cache-cache avec vos ports, c'est clairement l'outil qu'il vous faut pour reprendre le contrôle de vos déploiements sans finir en PLS à chaque conflit de port 80. Et si jamais vous stressez sur la sécurité de vos ports Docker, n'oubliez pas qu'on peut aussi jouer avec les règles iptables pour blinder tout ça, mais ça, c'est une autre histoire !

Merci à AeroStream972 pour la découverte !

Bichon - L'archiveur Rust pour garder une trace de vos emails

Par : Korben
21 janvier 2026 à 09:00

Vous avez 15 ans d'emails répartis sur 4 comptes différents et vous aimeriez bien pouvoir chercher dedans sans devenir complétement fou ? Bichon est fait pour vous . C'est un archiveur d'emails open source écrit en Rust qui synchronise vos boîtes mail et vous permet de tout fouiller via une interface web ultra léchée.

Le truc c'est que Bichon n'est pas un client mail. Vous ne pouvez pas envoyer ou recevoir de messages avec. C'est vraiment un outil d'archivage pur qui se connecte à vos serveurs IMAP, aspire tous vos emails, les compresse, les déduplique et les indexe pour que vous puissiez faire des recherches full-text dessus pour par exemple retrouver ce mail de 2012 où votre ex vous expliquait sa recette secrète du tiramisu.

L'interface web est plutôt propre, codée en React avec ShadCN UI. Vous pouvez filtrer par compte, par dossier, par expéditeur, par nom de pièce jointe, par taille, par date... Y'a même un dashboard avec des stats sur vos emails si vous aimez les graphiques. Et bonne nouvelle, le WebUI est disponible en 18 langues, donc le français est de la partie !

Côté authentification, ça gère le mot de passe IMAP classique mais aussi OAuth2 avec refresh automatique du token. C'est hyper pratique pour Gmail ou Outlook qui aiment bien compliquer les choses. Y'a aussi un support proxy si vous êtes derrière un firewall capricieux et une découverte automatique des serveurs IMAP. Hop, on branche et ça synchronise !

La stack technique envoie du bois également puisque le backend est en Rust basé sur le framework Poem, et le moteur de recherche/stockage utilise Tantivy. C'est un moteur de recherche full-text codé lui aussi en Rust, l'équivalent de Lucene mais sans la lourdeur de la JVM. Pour les métadonnées et la config, le projet utilise Native_DB et le tout est packagé en binaires pour Linux, macOS et Windows, ou en image Docker si vous préférez le self-hosted sans prise de tête.

Un truc important depuis la version 0.2.0 c'est que le modèle d'authentification a changé. L'ancien compte "root/root" a sauté au profit d'un compte admin par défaut (identifiants : "admin" / "admin@bichon"). Pensez donc à changer le mot de passe immédiatement, sinon ce sera la fête du slip dans vos archives. Et notez bien que le mot de passe de chiffrement que vous définissez au premier lancement ne peut pas être changé ensuite, donc choisissez-le bien, genre "KorbenCestLePlusBeau123".

Et si vous avez déjà des tonnes de vieux mails qui traînent en local, sachez que depuis la v0.3.0, y'a également un outil en ligne de commande qui s'appelle bichonctl. Ça permet d'importer vos archives au format EML ou MBOX directement dans le bouzin. C'est nickel pour centraliser tout votre passé exporté par ailleurs.

Bref, si vous cherchez un moyen propre d'archiver vos mails sans que ça bouffe toute votre RAM comme un client Java des années 2000, Bichon fait grave le taff. C'est léger, c'est rapide, et c'est en Rust. Ensuite, vous pourrez dormir tranquille !

Merci à Lorenper pour l'info et si vous cherchez d'autres outils cools pour vos mails, jetez aussi un œil à Mailspring ou si vous kiffez le stockage en Rust, Garage est une pépite.

Raspberry Pi AI HAT+ 2 : installer Hailo-10H et lancer un LLM local (Partie 1)

Avec la Raspberry Pi AI HAT+ 2, Raspberry Pi propose une carte intégrant directement un accélérateur Hailo-10H et 8 Go de mémoire dédiée, conçue pour le Raspberry Pi 5. Cette carte permet d’exécuter localement des modèles d’IA générative, des LLM et des Vision-Language Models, sans recours au cloud. L’AI HAT+ 2 délivre jusqu’à 40 TOPS […]

Cet article Raspberry Pi AI HAT+ 2 : installer Hailo-10H et lancer un LLM local (Partie 1) a été publié en premier sur Framboise 314, le Raspberry Pi à la sauce française.....

DockHand, un sérieux concurrent à Portainer pour vos environnements Docker (edit du 13/01)

Par : Cédric
8 janvier 2026 à 18:36
Je continue mes pérégrinations et, ce faisant, mes nombreuses découvertes sur la gestion et l’administration de conteneur rien que pour vous ! Mais pourquoi donc me direz-vous ? Pour vous préparer en douceur à la future aventure DevOps et, surtout, à la grande odyssée Kubernetes qui va suivre ... Vous connaissez Portainer ? Eh bien, vous allez kiffer DockHand.

C’est Noël : deux outils géniaux et un nouveau Wiki !

Par : Cédric
26 décembre 2025 à 11:07
Joyeux Noël ! L’occasion pour vous d’ouvrir plein de cadeaux et pour moi de vous souhaiter de joyeuses fêtes, ainsi qu’à l’avance mes meilleurs vœux professionnels — qui arrivent décidément très tôt désormais… On n’a jamais été aussi près, finalement :)

Les conteneurs indispensables en Lab : Uptime Kuma, Dozzle, IT Tools, ConvertX et surtout Traefik

Par : Cédric
10 décembre 2025 à 09:39
Vous en avez assez de perdre du temps à fouiller dans des logs Docker ; vous voulez un outil de supervision simple et efficace de votre vLab ; vous ne vous rappelez jamais de la cli base64 ou comment créer une paire de clefs rsa ?

Ackify CE : preuve de lecture cryptographique en Go + Vue3

Ackify CE est une plateforme open-source (AGPL v3) permettant de générer des preuves de lecture cryptographiquement vérifiables pour des documents internes.

Le problème

Les organisations doivent souvent prouver qu'un collaborateur a lu un document (politique RGPD, charte de sécurité, formation obligatoire). Les solutions existantes sont soit trop lourdes (signature électronique qualifiée comme DocuSign à 10-30€/utilisateur/mois), soit non sécurisées (simple email).

La solution

Ackify génère des preuves de lecture cryptographiques avec :

  • Signatures Ed25519 (même algo que SSH)
  • Horodatage immutable (PostgreSQL triggers)
  • Hash chain blockchain-like
  • Vérification offline possible

Cas d'usage

  • Validation de politiques internes (sécurité, RGPD)
  • Attestations de formation obligatoire
  • Prise de connaissance de procédures
  • Accusés de réception contractuels

Différence avec DocuSign

Ackify n'est pas une alternative à DocuSign pour des contrats juridiques. C'est une solution simple pour des besoins internes où la signature qualifiée est overkill.

N'hésitez pas si vous avez des questions techniques !

Installation

curl -fsSL https://raw.githubusercontent.com/btouchard/ackify-ce/main/install/install.sh | bash
cd ackify-ce
nano .env  # Configurer OAuth2
docker compose up -d

Installation complète en ~5 minutes.

Stack technique

Backend

  • Go 1.24 (Clean Architecture / DDD)
  • PostgreSQL 16
  • Chi Router
  • OAuth2 (Google, GitHub, GitLab, custom) ou Magic Link (passwordless)

Frontend

  • Vue 3 + TypeScript
  • Tailwind CSS
  • i18n (FR, EN, ES, DE, IT)

DevOps

  • Docker distroless < 30 MB
  • CI/CD GitHub Actions
  • Tests : 72,6% couverture (180 tests unitaires + 33 intégration)

Commentaires : voir le flux Atom ouvrir dans le navigateur

Production-Grade Container Deployment with Podman Quadlets | Larvitz Blog

16 novembre 2025 à 22:15

Une approche intéressante pour héberger des containers (Podman en l'occurrence) : les gérer avec systemd, le gestionnaire de service de nombreuses distributions Linux.

C'est moins standard qu'un Docker Compose mais ça peut avoir un intérêt pour les admins sys pure souche qui retrouveront ainsi des outils familiers.


Permalink

Production-Grade Container Deployment with Podman Quadlets | Larvitz Blog

16 novembre 2025 à 22:15

Une approche intéressante pour héberger des containers (Podman en l'occurrence) : les gérer avec systemd, le gestionnaire de service de nombreuses distributions Linux.

C'est moins standard qu'un Docker Compose mais ça peut avoir un intérêt pour les admins sys pure souche qui retrouveront ainsi des outils familiers.


Permalink

Proxmox, Prometheus et Grafana, les 3 mousquetaires (avec Traefik ça fait 4 …)

Par : Cédric
16 novembre 2025 à 17:57
Allez, hop, je me sens d’humeur superviseuse ce dimanche ! Installons donc un node exporter pour notre serveur Proxmox, histoire de pouvoir envisager une supervision à long terme et du capacity planning sur ce petit vLab Proxmox !
❌