Le Blog de Linuxine - geek https://blog.linuxine.net/categorie4/geek fr Fri, 04 Aug 2023 11:54:00 +0200 PluXml Pleroma dans un container https://blog.linuxine.net/article43/pleroma-dans-un-container-avec-podman https://blog.linuxine.net/article43/pleroma-dans-un-container-avec-podman <p>A la demande générale - au moins deux personnes me l'ont demandé sur Mastodon ! ;)&nbsp; - voici un petit post pour expliquer comment je fais tourner mon instance Pleroma, <a href="https://social.linuxine.net" target="_blank">social.linuxine.net</a>, dans un container lancé via podman-compose.</p> <p>Un petit rappel sur <a href="https://pleroma.social/" target="_blank">Pleroma</a> : il s'agit d'un logiciel permettant d'installer un serveur de microblogging qui peut se fédérer (donc parler) à tout serveur utilisant lui aussi le protocole ActivityPub, comme par exemple d'autres serveurs Pleroma, tous les serveurs Mastodon, mais aussi PeerTube, PixelFed, etc. On parle souvent de "Fedivers" pour désigner l'ensemble des logiciels de serveurs qui peuvent se fédérer entre eux.</p><p>Je viens de m'apercevoir que si j'avais bien parlé <a href="https://blog.linuxine.net/blog/mastodon-le-twitter-decentralise/">sur ce blog,</a> en 2017, du fait que j'avais quitté Twitter pour Mastodon (sur les serveurs de Framasoft, Framapiaf, à l'époque), je n'avais pas parlé de l'étape d'après, c'est à dire quand j'ai décidé carrément d'héberger ma propre instance sur mon serveur.</p> <p>Il s'était avéré à l'époque que Mastodon était horriblement lourd à installer et maintenir, et surtout que, même pour une instance mono utilisateur comme la mienne, il nécessitait des ressources bien trop importantes pour ma machine. Je crois d'ailleurs que c'est toujours le cas de nos jours hélas.</p> <p>J'avais donc cherché s'il existait des alternatives moins gourmandes en ressources, et j'avais découvert Pleroma. Il était alors en phase de développement, pas encore très stable, mais il était relativement simple à installer et ne consommait quasiment aucune ressource. J'avais alors procédé à une installation "classique" en local sur mon serveur CentOS, avec une base PostgreSQL.</p> <p>Tout a bien fonctionné pendant quelques temps, mais en voulant faire des mises à jour de Pleroma, j'ai commencé à avoir des difficultés dues au fait que mon serveur n'avait pas toujours les dernières librairies disponibles. Comme je travaillais de plus en plus avec des containers, je me suis dit que c'était l'occasion de tester si cela pouvait résoudre mon souci.</p> <h3>Build du container</h3> <p>Le <a href="https://git.pleroma.social/pleroma/pleroma/">repo gitlab de Pleroma</a> indique qu'ils ne fournissent pas de fichier <code>Dockerfile</code> pour builder un container, mais donne des liens vers les repo d'autres personnes qui en proposent. Le souci, dans me cas, est que ces personnes supposent qu'on aura un container pour faire tourner Pleroma, et un autre pour la base de données. Or, comme je possédais déjà ma base en local, je voulais continuer à l'utiliser, à la fois pour ne pas avoir à perdre mon historique, ou devoir tenter une migration, et surtout parce que j'avais déjà toutes mes procédures de sauvegardes configurées.</p> <p>Je suis donc partie du Dockerfile qui est disponible à la racine du repo (mais qui n'est donc pas officiellement là si on en croit leur readme ^^) pour builder mon container. J'ai utilisé la branche <em>develop</em>, car à l'époque le Dockerfile fourni dans les branches stables ne fonctionnait pas chez moi. Depuis je n'ai pas essayé de changer de version, je ne sais donc pas si cela pourrait fonctionner sur une branche stable.</p> <p>Je lance un build de container très basique, avec la commande suivante :</p> <pre> $ docker build -t &lt;tag&gt; -f Dockerfile</pre> <p>Le build est un peu long car le fichier fait appel à un container pour compiler le code source, puis en créé un autre contenant uniquement le code compilé. Ensuite, on va démarrer ce container via un fichier compose.</p> <h3>Fichier compose</h3> <p>Le contenu de mon fichier pour podman-compose est le suivant:</p> <pre> version: '1' services: pleroma: container_name: pleroma_container image: localhost/&lt;tag&gt; privileged: true environment: - DOMAIN=&lt;domain&gt; - DB_USER=&lt;user&gt; - DB_PASS=&lt;pass&gt; - DB_NAME=&lt;name&gt; - DB_HOST=&lt;host&gt; ports: - xxx:xxxx volumes: - /xx/xx/uploads:/var/lib/pleroma/uploads:rw - /xx/xx/priv/static:/var/lib/pleroma/static </pre> <p>Bien sur la partie environnement concernant la base de données n'est pas indispensable et est très spécifique à mon cas, puisque je réutilise ma base locale. Remplacez bien sur tout ce qui est entre des chevrons par votre propres valeurs si besoin, et remplacez les xxx par vos ports et vos chemins vers l'endroit où vous souhaitez stocker les fichiers statiques et les médias uploadés. Attention, l'utilisateur qui lance le container doit pouvoir écrire dans ces répertoires.</p> <p>Ensuite, on peut simplement lancer le container avec la commande suivante:</p> <pre> $ podman-compose -f pleroma-compose.yml up -d</pre> <p>Il faut ensuite prévoir un ProxyPass Apache, ou son équivalent nginx pour pouvoir servir le container depuis l'URL de l'instance (ici, le &lt;domain&gt;) et ça tourne ! Pour stopper proprement le container, on lancera:</p> <pre> $ podman-compose -f pleroma-compose.yml down</pre> <p>&nbsp;</p> <p>Et pour répondre à l'interrogation de départ: oui, cette façon de faire permet de s'affranchir des problèmes de librairies pour la compilation, puisque tout est compilé sur une Alpine, et donc plus à jour qu'une CentOS. Et oui, pour le moment (croisement de doigts) ça marche plutôt bien !</p> Fri, 04 Aug 2023 11:54:00 +0200 Linuxine Quitter Gmail https://blog.linuxine.net/article15/quitter-gmail https://blog.linuxine.net/article15/quitter-gmail <p><img alt="" src="https://blog.linuxine.net/data/medias/gmail.png" style="float: left; width: 150px; height: 150px;" />Je suis sous Gmail depuis quasiment le début, donc quasiment 15 ans. Ça ne nous rajeunit pas ! Je me rappelle, à l'époque, le service était en Beta, et on ne pouvait pas s'y inscrire, il fallait une invitation. C'était mon collègue Gaetan qui m'avait invitée, je crois, et je me sentais privilégiée de faire partie du cercle fermé des premiers utilisateurs. Il faut dire que pour l'époque, le service était révolutionnaire : un excellent moteur anti spam, une interface moderne, une capacité de stockage bien supérieure à celle proposée par les autres fournisseurs d'emails... et je crois qu'au début il n'y avait même pas de pub ! Bon, en ce temps là, le slogan de Gmail c'était "Don't be evil", aussi...</p><p>Avec notre compte Gmail est arrivé le lot de services annexes de Google : Agenda, Drive, Youtube, même Google plus. Et c'était chouette, au début ! Mais ça, c'était avant que ça ne devienne vraiment très orienté "tracking de l'utilisateur" et matraquage publicitaire... Ces derniers temps, les innovations étaient vraiment orientées dans ce sens, et je les trouvais de plus en plus effrayantes : avoir un résumé de tous ses achats à partir de l'analyse de ces mails, voir un rendez-vous créé automatiquement sans nous demander lorsqu'on achète un billet d'avion... jusqu'à Inbox, la solution d'espionnage ultime qui scannait ouvertement tout notre courrier pour le trier à notre place. Bon, ce dernier service vient de fermer ces portes, preuve que la tendance à laisser tout faire à l'IA à notre place en échange de nos données personnelles ralentit un peu, c'est déjà ça.</p> <p>Après toutes ces années à voir Google basculer progressivement du coté obscur, j'ai abandonné quasiment tous ses services, mais il me restait un grand pas à franchir : arriver à quitter Gmail. J'avais déjà mon propre serveur email, mais je ne voyais pas vraiment ça comme une alternative viable, car j'ai besoin d'avoir une adresse que je peux donner à des contacts qui ne sont pas amenés à connaître mon identité de linuxine, et j'aime bien séparer les deux. Par ailleurs, avoir son propre serveur mail, c'est du travail, et en plus, c'est compliqué d'arriver correctement à contacter certains domaines obtus comme les adresses hotmail.com, Microsoft ayant une sale tendance à blacklister tous les noms de domaines qui ne sont pas très connus.</p> <p>J'ai donc cherché un service de messagerie qui respecte la vie privée, et si possible français. Je connaissais déjà <a href="https://protonmail.com/">ProtonMail</a>,&nbsp; mais c'est Suisse. J'ai donc demandé à mes contacts sous Mastodon s'ils connaissaient un équivalent français, et on m'a conseillé <a href="https://www.netcourrier.com/">Net-C</a>, ex NetCourrier. Il s'agit d'une entreprise française, qui propose des services de messagerie sans publicité, ni tracking, pour seulement 1€ par mois. Et il y a même la possibilité d'avoir un pack Famille, avec par exemple des interfaces spécifiques pour les enfants à partir de 6 ans, et une validation des emails et des expéditeurs par les parents.</p> <p>J'ai donc sauté le pas ! Pour le moment je suis contente, c'est tout nouveau tout beau! :D Il y a de base une fonction de tri des emails de newsletter dans un dossier dédié qui marche vraiment bien. Je n'ai pas encore fermé mes autres adresses Gmail, déjà parce que je ne compte pas forcément donner la nouvelle adresse à tous les sites de commerce, ensuite parce qu'il me faut faire du tri : me désinscrire de certaines newsletters, changer l'adresse pour certains sites... Par contre, j'ai déjà rapatrié tous mes historiques d'achats &amp; compagnie, donc mes boites Gmail sont quasi vides, et rien que ça, ça fait du bien ! J'ai l'impression d'avoir assaini ma vie numérique ! :)</p> <p>&nbsp;</p> Fri, 05 Apr 2019 13:06:00 +0200 Linuxine Migration du blog sous Pluxml https://blog.linuxine.net/article10/migration-du-blog-sous-pluxml https://blog.linuxine.net/article10/migration-du-blog-sous-pluxml <p>Je viens de passer de nombreuses heures à rendre statique mon ancien blog sous WordPress. La génération des pages statiques en soit était rapide, grâce à un plugin WordPress, mais il a ensuite fallu corriger des url mal formées, convertir des vidéos dans un autre format, essayer de retrouver les sources d'images perdues...</p><p>Un des principaux soucis que j'ai rencontré est que j'utilisais Flash, à la fois pour les galeries d'images et les vidéos... Et Flash n'est plus supporté par aucun navigateur de nos jours. J'ai donc dû ré-encoder les vidéos (j'ai choisi le format .webm, espérons qu'il soit supporté plus longtemps !) et j'ai fait un <a href="https://blog.linuxine.net/index.php?article9/conversion-video">billet sur le sujet</a> à l'occasion. Pour les images, j'ai fait au plus simple, et j'ai utilisé ma grande connaissance du langage PHP pour bricoler une petite galerie qui permet d'afficher toutes les images d'un dossier avec un style minimum. J'ai aussi constaté qu'inclure des vidéos Youtube directement dans des billets n'est pas une bonne idée, car elles deviennent hélas rapidement indisponibles, laissant un emplacement vide là où on pouvait auparavant voir la vidéo...</p> <p>Je vous invite à aller voir la <a href="https://blog.linuxine.net/index.php?article8/les-archives">page des archives</a> pour voir la totalité des posts ; l'ancien blog est toujours accessible au format statique à l'adresse <a href="http://linuxine.net/blog">http://linuxine.net/blog.</a></p> <p>Au passage, voici un petit bilan de l'évolution de mon blog depuis sa création. J'ai rédigé pas moins de 518 billets depuis 2006 ! J'en ai profité pour faire un petit graphique sous Plot.ly, ça faisait longtemps :</p> <p>Passez la souris sur le graphique ci-dessous pour avoir le détail, ou <a href="http://linuxine.net/blog/images/Divers/blog.html" target="_blank">cliquez ici</a> pour voir la version taille réelle.<br /> <iframe height="500px" src="/blog/images/Divers/blog.html" style="border:none" width="800px"></iframe></p> <p>On peut voir une diminution du nombre de posts ces dernières années, il va falloir remédier à cela ! C'est en partie dû au fait qu'en 2006, il n'y avait pas encore vraiment de réseaux sociaux, et ils n'étaient pas utilisés pour partager des informations sur des sujets d'actualités. Dans les premières années du blog, je faisais donc beaucoup de posts dans la catégorie "News", pour parler d'articles de journaux qui m'avaient intéressés, ou bien d'actualités liées à l'écologie. Cette catégorie est à présent très peu utilisée, puisque je partage maintenant principalement mes articles sur Mastodon.</p> <p>Concernant les réseaux sociaux, j'ai été amusée de constater que j'étais au départ assez enthousiaste lors de leur découverte. Pas du tout à propos de Facebook, je vous rassure, mais j'ai plutôt bien accroché lors que ma découverte de Twitter. Il faut dire que c'était une autre époque, je m'étonnais qu'il n'y avait aucune publicité sur ce réseau... De même, je me plaignais au début du blog de ne pas être assez bien référencée par Google... maintenant j'en suis plutôt à mettre des fichiers pour dire à ses robots de ne plus parcourir mon site ! :D</p> <p>Concernant les autres contenus, je partageais auparavant plus de photos, même si elles sont protégées par mot de passe, qu'actuellement. Je parlais également pas mal de mon enthousiasme pour Linux et les produits Mozilla. Ces dernières années sont apparues des rubriques sur mes créations et des recettes de DIY, ainsi que des billets un peu plus "techniques",&nbsp; avec des morceaux de code dedans, ce qui n'était pas du tout le cas au début du blog.</p> <p>Mais j'en viens à oublier l'objet de ce post : la migration sous <a href="https://www.pluxml.org/">PluXml</a> ! Historiquement, ce blog a été créé sous Dotclear. J'ai migré sous WordPress en 2013, car Dotclear n'était plus maintenu, et j'ai été séduite par l'aspect "clé en main" de WordPress. Mais ce dernier est également très lourd, et sa popularité en fait une faille de sécurité, car comme il est utilisé dans près de 25% des sites web, de nombreuses attaques le ciblent spécifiquement. En outre, ce qui m'a vraiment motivée à partir, c'est la sortie du nouvel éditeur "Gutenberg" de WordPress,&nbsp; qui est tout simplement réservé aux gens qui ne savent pas du tout faire du web, au détriment de ceux qui savent. Je m'explique : il devient très facile avec cet éditeur de rédiger ses contenus sans savoir coder de HTML ou autre CSS, car il suffit de déplacer des blocs de texte, image, etc. Tant mieux pour les rédacteurs qui ne savent pas code, me direz-vous! Mais ce qui ne m'a pas plu du tout, c'est que cette souplesse se fait au détriment des utilisateurs plus avancés : les inclusions de code "custom", appelés shortcode dans le jargon de WordPress, ne vont bientôt plus fonctionner. Et le processus prévu pour les remplacer est effroyablement compliqué : là où on devait auparavant faire quelques bidouilles en PHP, il faudra maintenant réaliser des actions bien plus compliquées, et en Javascript, en plus... bref, sans moi !</p> <p>Cela faisait longtemps que je voulais tester PluXml, mais il n'est pas facile de convertir un blog WP sous ce format. D'où ma décision de transformer l'ancien blog en blog statique, et de partir sur du neuf. J'ai pas mal progressé au fil des années en CSS, et j'ai pu relativement facilement recopier le style de mon ancien blog :</p> <p><img alt="" src="https://blog.linuxine.net/data//medias/old.png" style="width: 600px; height: 336px;" /></p> <p>vers le nouveau :</p> <p><img alt="" src="https://blog.linuxine.net/data//medias/new.png" style="width: 700px; height: 558px;" /></p> <p>Je suis assez contente du résultat, c'est assez ressemblant !</p> <p>PluXml offre une assez importante librairie de plugins en PHP, je ne suis donc pas trop perdue. Et en terme de backups et de rapidité, rien à voir avec WP, c'est tout du fichier plat ! Il ne me reste plus qu'a écrire plein de billets pour faire vivre ce nouveau blog ! ;)</p> <p>&nbsp;</p> <p>&nbsp;</p> <p>&nbsp;</p> Thu, 31 Jan 2019 15:07:00 +0100 Linuxine