Architecture

Bon, c’est décidé, je refais de A à Z ce blog. Maintenant que c’est décidé, on fait quoi ? Parce que c’est bien gentil les intentions mais maintenant faut se sortir les doigts et produire ! Et donc commençons par faire un

État des lieux

Ghost est une plate-forme de blogging dans le cloud ou auto-hébergeable simple mais efficace, qui dans sa configuration minimale utilise SQLite3 pour sa base de donnée (avec tous les risques que ça peut comporter). Pour testouiller dans son coin, c’est largement suffisant mais dans un environnement de production, ou si on veut juste pouvoir proprement sauvegarder et restaurer la base de données du blog, c’est limitant.

À côté de ça, je n’avais fait aucune sauvegarde, j’avais gardé le thème de base, il n’y pas de moyens de commenter et pour savoir si quelqu’un se perdait dessus, j’avais ouvert un compte Google Analytics (c’était y’a 3 ans et c’était juste pour tester, me jugez pas).

Du coup, on fait quoi ?

L’incendie des datacenters OVH de Strasbourg a beaucoup fait parler de sauvegarde, de résilience, de propriété des données et de responsabilité. Et ça faisait un moment que je cherchais un angle et une utilisation concrète de ce blog.

Alors la lumière divine m’a baigné de sa chaude clarté et j’ai su : j’allais refondre complètement ce blog, refaire une installation propre et évolutive, et documenter ça dans le blog ! Et tant qu’à faire, travailler tous les points faible pour les améliorer, rajouter des commentaires, des analytics respectueux de la vie privée, pouvoir envoyer des newsletter sans me faire black lister pour spam, et m’amuser à tester d’autres usages.

J’ai longuement réfléchis à ce qu’il faudrait reprendre et améliorer, comment, dans quel ordre, j’ai fais le tri entre l’essentiel, l’important et les trucs marrants à tester pour le lulz, et j’ai réparti ça en plusieurs lots :

Plan d’implémentation

  1. Essentiel pour que le blog ouvre
    1. Base de donnée sous MySQL 82. Mails via Mailgun3. Thème pas trop dégueulasse4. Analytics (mais compatible gdpr, sans cookie traceur et auto-hébergeable si possible)
  2. Essentiel rapidement
    1. Backup/PRA v12. Membership gratuit pour Newsletter
  3. Nécessaire pour la suite
    1. Commentaires 2. Traduction du thème3. Backup/PRA v2
  4. Pour le lulz
    1. CDN / proxy2. Stockage externalisé des médias (images)3. Héberger un podcast4. Paiement via Stripe pour un éventuel Membership payant ?5. Backup/PRA v+6.  Autres ?

Au moment de la parution de cet article, tout le premier groupe sera implémenté, et le 2e à moitié (la fonctionnalité de Membership étant native dans Ghost v4, y’a pas grand chose à faire), le gros de la réflexion du travail étant sur les mécaniques de sauvegarde à mettre en place.

C’est mignon tout ça, et maintenant ?

Maintenant ? Bah on va voir ensemble les choix faits, comment j’ai mis tout ça en place, la configuration,... Je ne détaillerai pas TOUT dans de longs articles pas à pas, parce que y’a pas forcément matière à, mais je reviendrai sur chaque point au fur et à mesure. Et je mettrai à jour ce billet avec les liens vers les billets correspondants, ou si j’ai d’autres idées de fonctionnalités à rajouter ou à tester.