Underworlds Scriptorium Fabula.

このページは英語から日本語にgroqの助けを借りて翻訳されました。

Мой пргресс с момента публикации крайней фабулы. Переезд на новый хостинг. Настройка почтового сервера, бэкапа, системы уведомлений о ресурсах сервера. Локализация programmer-underworlds.

Мои приветствия. Сейчас 01:37 26-ого апреля 2026 года по центральному стандартному времени. и я решил что настало время для полёта мысли и изложения своих деяний с тех пор как в феврале я опубликовал крайную фабулу. Запаситесь любимым напитком который вы предпочитаете пить при просмотре ютуба и поехали... :)

Я хочу оформить данную статью в виде свободного полёта мыслей вместо хорошо продуманного отчёта. :) Я работал усиленно над разными частами своего проекта о которых я напишу ниже и это было достаточно интенсивно. И скорее всего я буду писать эту статью в несколько присестов.

Большим и ответственным решением было переехать на новый хостинг, так как предыдущий бесплатный хостинг на google cloud перестал удовлетворять моим запросам и потребностям проекта и в один день просто подвис. Я предположил что было не достаточно оперативной памяти потому как на бесплатном хостинге от гугла было доступно всего 2Гб оперативной памяти. И на следующий же день после этого я начал изучать альтернативные доступные (по цене) возможности. И нашёл contabo хочтинг, который предоставил достаточно хорошие условия на мой взгляд (относительно гугловых альтернатив). И началось... Я начал перевозить уже существующие настройки с предыдущего хостинга на новый. И успешно с этом справился примерно за неделю.

Следующим шагом я уже очень долго размышлял над тем что надо бы выполнять бэкапы конфигурации, потому что огромную часть конфигурации была сделана с помощью ChatGPT и заняло бы очень долгое время заново настраивать всё то что уже было настроено таким образом. Я думал о rsync, но чат предложил restic и мне понравилось что restic делает инкрементальные бэкапы. Инкрементальные бэкапы проходят НАМНОГО быстрее полных и работают почти как git репозиторий что позволяет откатиться на одну из предыдущих версий если понадобится. И я успешно и достаточно оперативно прикрутил restic для бэкапа своего сервера. И был очень доволен результатом. Теперь для полного бэкапа моей системы я просто логинюсь к своему vps на contabo и просто запускаю один скрипт который бэкапит все конфигурации на мой локальный компьютер.

На очереди была реализация моего давнего желания быть уведомленным в случае если мой сервер не чувствует себя хорошо. А конкретнее - получать уведомления на емэйл в случае если не хватает места на диске (на гугле было всего 10Гб кстати, сейчас же 100) и в случае если мой programmer-underworlds проект (java процесс) по какой то причине умер. И для этого я пришёл к выводу что было бы хорошо заиметь свой собственный почтовый сервер, так как теперь конфигурация vps позволяет это делать (4Гб оперативы и 4 ядра процессора против 2-ух ядер на гугле). И так как у меня уже куплен домен - я пришёл к выводу что теперь с помощью LLM будет достаточно просто настроить почтовый сервер. И я был прав. :) Mailcow - достаточно простое и удобное решение с включением всего мне необходимого (web interface, imiap, spamassassin). Кстати, если у вас есть желание заполучить почтовый ящик на @programmer-underworlds.dev домене (так же существует алиас вида @p-u.dev который делает процесс диктовки вашего почтового ящика при личной встрече или по телефону значительно удобнее) то дайте мне знать написав мне на pasha@p-u.dev адрес. :)

После настройки почтового сервера нужно было настроить систему мониторинга ресурсов (потребление оперативной памяти, свободного пространства жёсткого диска, проверка жив ли java процесс моего проекта), и по совету ChatGPT я прибег к помощи monit утилиты. Это достаточно удобная утилита и меня вполне устраивает. Вот например как выглядит страница monit которая предоставляет визуальную информацию об интересующих меня ресурсах.

Страница отслеживаемых monit ресурсов.

Я добавил отслеживание java процесса (icoupserver, programmer-underworlds) и так же проверку регулярности обновления ssl сертификата для сайта (programmer-underworlds.dev-ssl). И теперь если я выключаю java процесс (для обновления например) - то получаю уведомление на мой емэйл вида

Письмо от monit о том что programmer-underworlds процесс помер.

Сейчас 18:29 26-ого апреля 2026 и я продложаю написание данной фабулы.

Далее я задался вопросом "А как же я буду получать уведомления от monit если мой почтовый сервер приляжет отдохнуть?" и по началу хотел настроить sms уведомления на телефон, однако посовещавшись с LLM был убеждён что лучше воспользоваться уведомлениями через Telegram, что незамедлительно и сделал и это было просто. С помощью той же LLM был создан Telegram бот и скрипт для monit для отправки уведомлений о статусе почтового сервера прямо в мой Telegram аккаунт.

Уведомление от monit о том что почтовый сервер лежит в Telegram.

И это было очень приятно видеть как мой сервер всё больше обликается в полноценный сервер продакшн уровня. :)

Я понимал что теперь было бы хорошо иметь разные доменные имена для веб интерфейса моего почтового сервера и для programmer-underworlds приложения и что бы при этом сохранялся URL без упоминания разных портов для открытия этих страниц. И разумеется я уже долгое время был наслышан о программе обратного проксирования широко используемой всеми гигантами (и лилипутами) индустрии nginx созданой Игорем Сысоевым. И этот тап был завершён примерно за 2 дня с помощью LLM была создана соответствующая моим интересам конфигурация nginx и теперь мой сервер успешно слушает и обрабатывает запросы на programmer-underworlds.dev и mail.programmer-underworlds.dev доменных именах.

Следом я разделил свой проект на двечасти: programmer-underworlds и icoupserver. Я решил вынести логику отвечающую за игровую часть в отдельный проект, так как сейчас я реже занимаюсь правками для игры и чаще правками для части которая является веб сайтом.

В это время меня уже всё чаще посещало желание поделиться своими статьями со своей Мамой и Русскоговорящими друзьями и я понимал что мало кто из них будет комофртен с чтением моих статей на Английском языке и я не хотел обременять их "ручным" переводом страниц и хотел что бы их опыт чтения и взаимодействия с моим сайтом для них проходил в комфорте и на удобном для них языке. И поэтому я задался задачей по локализации статей и интерфейса моего сайта для Рускоговорящих (а так же Китайско, Японско и многих других говорящих) пользователей. И как обычно цель была достигнута примерно в течении 2-ух недель и теперь пользователи многих стран имеют возможность наслаждаться чтением моих фабул на их родном языке в комфорте. После того как это было достигнуто - я подключил красивые готические шрифты для Русского, Китайского, Японского и Индиского языков.

Кстати, один мой хороший друг Захар не так давно выразился примерно так цитирую: "Шрифт нечитаемый. Прям кровь из глаз )". И если вы солидарны с ним в его мнении (я то личноо считаю что эти шрифты - услада для глаз) то я вам (как и ему) рекомендую ознакомиться вот с этой фабулой.

И вот теперь я нашёл время для написания данной статьи-отчёта. Я, разумеется, хотел поделиться многими вещами которые произошли за время написания крайней фабулы. Например о том как мой аккаунт был заблокирован ютубом и мои попытки в беседе с представителями службы поддержки ютуба дать мне доступ к моим видео что я залил за долгое время его существования (окола 10-и лет) и к которым теперь утерял доступ и о моей ненависти к представителям ютуба которая возникла как результат. И возможно я напишу об этом конкретном случае, но сейчас я хочу локализовать эту статься для остальных поддерживаемых моим сервером языков и поделиться ею с миром.

Спасибо за ваше время и внимание. И как всегда...

Император Защищает.