Underworlds Scriptorium Fabula.

Cette page a été traduite de l'Anglais vers le Français avec l'aide de groq.
Cet article a été traduit du russe en français à l'aide du traducteur Groq API. L'article original peut être trouvé here.

Mon progrès depuis la publication de la dernière fabula. Déplacement vers un nouvel hébergement. Configuration du serveur de messagerie, de la sauvegarde, du système de notification des ressources du serveur. Localisation de programmer-underworlds.

Mes salutations. Il est actuellement 01:37 le 26 avril 2026, heure normale du centre, et j'ai décidé qu'il était temps pour un vol de pensée et pour exposer mes actes depuis que j'ai publié la dernière fabula en février. Prenez votre boisson préférée que vous aimez boire en regardant YouTube et allons-y... :)

Je veux présenter cet article sous la forme d'un vol de pensée libre au lieu d'un rapport bien réfléchi. :) J'ai travaillé dur sur différentes parties de mon projet, dont je vais écrire ci-dessous, et cela a été assez intense. Et il est probable que j'écrirai cet article en plusieurs étapes.

La décision importante et responsable a été de déménager vers un nouvel hébergement, car l'hébergement gratuit précédent sur Google Cloud ne répondait plus à mes demandes et aux besoins de mon projet et a simplement cessé de fonctionner un jour. J'ai supposé que cela était dû à un manque de mémoire vive, car l'hébergement gratuit de Google n'offrait que 2 Go de mémoire vive. Et le lendemain de cet incident, j'ai commencé à étudier les alternatives disponibles (en termes de prix). Et j'ai trouvé Contabo, qui m'a offert de bonnes conditions, à mon avis (par rapport aux alternatives de Google). Et c'est ainsi que j'ai commencé à transférer les paramètres existants de l'ancien hébergement vers le nouveau. Et j'y suis arrivé avec succès en environ une semaine.

L'étape suivante, sur laquelle j'ai longuement réfléchi, était de configurer les sauvegardes de la configuration, car une grande partie de la configuration avait été effectuée avec l'aide de ChatGPT et il aurait fallu beaucoup de temps pour la reconfigurer. J'ai pensé à rsync, mais le chat m'a suggéré restic, et j'ai aimé le fait que restic effectue des sauvegardes incrémentales. Les sauvegardes incrémentales sont beaucoup plus rapides que les sauvegardes complètes et fonctionnent presque comme un référentiel Git, ce qui me permet de revenir à l'une des versions précédentes si nécessaire. Et j'ai réussi à configurer restic pour la sauvegarde de mon serveur de manière assez rapide. Et j'étais très satisfait du résultat. Maintenant, pour effectuer une sauvegarde complète de mon système, je me connecte simplement à mon VPS sur Contabo et je lance un script qui sauvegarde toutes les configurations sur mon ordinateur local.

Ensuite, j'ai réalisé mon vieux rêve de recevoir des notifications si mon serveur ne se sentait pas bien. Plus précisément, recevoir des notifications par e-mail si l'espace disque est insuffisant (il n'y avait que 10 Go sur Google, mais maintenant j'ai 100 Go) et si mon projet programmer-underworlds (un processus Java) est mort pour une raison quelconque. Et pour cela, j'en suis venu à la conclusion qu'il serait bien d'avoir mon propre serveur de messagerie, car la configuration de mon VPS le permet maintenant (4 Go de mémoire vive et 4 cœurs de processeur, contre 2 cœurs sur Google). Et comme j'ai déjà acheté un domaine, j'en suis venu à la conclusion que, grâce à LLM, il serait assez simple de configurer un serveur de messagerie. Et j'avais raison. :) Mailcow est une solution assez simple et pratique qui inclut tout ce dont j'ai besoin (interface Web, IMAP, SpamAssassin). Si vous avez envie d'obtenir une boîte de messagerie sur le domaine @programmer-underworlds.dev (il existe également un alias @p-u.dev qui rend le processus de diction de votre boîte de messagerie lors d'une rencontre personnelle ou au téléphone beaucoup plus pratique), faites-moi savoir en m'écrivant à l'adresse pasha@p-u.dev. :)

Après avoir configuré le serveur de messagerie, il fallait configurer le système de surveillance des ressources (consommation de mémoire vive, espace disque disponible, vérification si le processus Java de mon projet est en cours d'exécution), et sur les conseils de ChatGPT, j'ai utilisé l'utilitaire monit. C'est une utilitaire assez pratique qui me convient parfaitement. Voici, par exemple, à quoi ressemble la page monit qui fournit des informations visuelles sur les ressources qui m'intéressent.

Page de surveillance des ressources monit.

J'ai ajouté la surveillance du processus Java (icoupserver, programmer-underworlds) et également la vérification de la régularité de la mise à jour du certificat SSL pour le site (programmer-underworlds.dev-ssl). Et maintenant, si je stoppe le processus Java (par exemple, pour une mise à jour), je reçois une notification sur mon e-mail comme suit :

Lettre de monit indiquant que le processus programmer-underworlds est mort.

Il est actuellement 18:29 le 26 avril 2026 et je continue à écrire cet article.

Ensuite, je me suis demandé : « Et comment vais-je recevoir des notifications de monit si mon serveur de messagerie décide de se reposer ? » et, au début, je voulais configurer les notifications SMS sur mon téléphone, mais après avoir discuté avec LLM, j'en suis venu à la conclusion qu'il valait mieux utiliser les notifications Telegram, ce que j'ai fait immédiatement. Avec l'aide de LLM, j'ai créé un bot Telegram et un script pour monit pour envoyer des notifications sur l'état du serveur de messagerie directement dans mon compte Telegram.

Notification de monit indiquant que le serveur de messagerie est hors service sur Telegram.

Et c'était très agréable de voir mon serveur devenir de plus en plus un serveur de production de niveau supérieur. :)

J'ai compris que maintenant, il serait bien d'avoir différents noms de domaine pour l'interface Web de mon serveur de messagerie et pour l'application programmer-underworlds, et que l'URL devrait rester inchangé sans mentionner différents ports pour ouvrir ces pages. Et, bien sûr, j'avais déjà entendu parler du programme de proxy inverse largement utilisé par tous les géants (et les nains) de l'industrie, nginx, créé par Igor Sysoev. Et cette étape a été terminée en environ 2 jours, avec l'aide de LLM, j'ai créé une configuration nginx correspondant à mes intérêts, et maintenant mon serveur écoute et traite les requêtes sur les noms de domaine programmer-underworlds.dev et mail.programmer-underworlds.dev.

Ensuite, j'ai divisé mon projet en deux parties : programmer-underworlds et icoupserver. J'ai décidé de sortir la logique responsable de la partie jeu dans un projet séparé, car maintenant je travaille moins sur les modifications du jeu et plus sur les modifications de la partie qui est le site Web.

Pendant ce temps, j'ai de plus en plus souvent eu envie de partager mes articles avec ma mère et mes amis russophones, et j'ai compris que peu d'entre eux seraient à l'aise avec la lecture de mes articles en anglais, et je ne voulais pas les obliger à effectuer une traduction manuelle des pages et je voulais que leur expérience de lecture et d'interaction avec mon site se déroule dans le confort et dans leur langue maternelle. Et c'est pourquoi j'ai décidé de travailler sur la localisation des articles et de l'interface de mon site pour les utilisateurs russophones (ainsi que pour les utilisateurs chinois, japonais et de nombreux autres pays). Et, comme d'habitude, l'objectif a été atteint en environ 2 semaines, et maintenant les utilisateurs de nombreux pays ont la possibilité de lire mes articles dans leur langue maternelle dans le confort. Après avoir atteint cela, j'ai connecté des polices de caractères gothiques pour le russe, le chinois, le japonais et l'indien.

Un de mes bons amis, Zakhar, a récemment exprimé son opinion à peu près ainsi : « La police est illisible. C'est du sang sorti des yeux ) ». Et si vous êtes d'accord avec lui (je pense personnellement que ces polices sont un plaisir pour les yeux), je vous recommande (comme je l'ai fait pour lui) de vous familiariser avec cet article.

Et maintenant, j'ai trouvé le temps pour écrire cet article-rapport. J'ai, bien sûr, voulu partager de nombreuses choses qui se sont passées depuis l'écriture de la dernière fabula. Par exemple, à propos de la façon dont mon compte a été bloqué par YouTube et de mes tentatives pour discuter avec les représentants du service d'assistance de YouTube pour me donner accès à mes vidéos que j'ai téléchargées pendant longtemps (environ 10 ans) et auxquelles j'ai maintenant perdu l'accès, et de ma haine envers les représentants de YouTube qui a résulté de cela. Et peut-être que j'écrirai à ce sujet plus tard, mais pour l'instant, je veux localiser cet article pour les autres langues prises en charge par mon serveur et le partager avec le monde.

Je vous remercie de votre temps et de votre attention. Et comme toujours...

L'Empereur Protège.