Программирование
3 поста
Друзья, сегодня добавил инструкцию по запуску в wiki репозитория для тех кто хотел попробовать запустить у себя.
Вот инструкция
Покрыть инструкциями все кейсы - цель, которая на стадии формирования в данный момент, но вы всегда можете задать вопрос на github, который на данный момент не освещен в документации (не забывайте добавить метку `question`) или в комментариях к постам.
Позже добавлю инструкцию по запуску с Traefik и подробнее опишу настройку уже самого DNS.
А еще docker-сборки релизов теперь сразу будут загружаться в DockerHub (в будущем планирую публиковать еще и в реестах GitHub и Yandex.Cloud для лучшей доступности, т.к. в некоторых регионах сейчас провайдерами блокируется доступ к DockerHub).
Все также ведется работа над проектом, сейчас изучаются вопросы связанные с мониторингом. А именно изучаю какие метрики важны для надежного мониторинга.
Ответы пишите в комменты. А еще предлагайте идеи.
Поймал себя на мысли о том, что было бы интересно сделать приложение где райдеры смогут отмечать интересные места для катания. Но хотелось бы знать мнение самих райдеров, чтобы не получилось "вы нас не просили, но мы сделали"
Смотрел подобные приложения/социальные сети и подобное. Был некий Brail Skateboarding, который, как я понял превратился тупо в интернет-магазин.
Затея простая. На карте можно отмечать точки, где есть площадки или место для катания (или оно отсутствует но там катаются😃). Социальные механики (друзья, поиск по городам, посты, чаты, сообщества).
Продолжаю работу над своим пет-проектом. В первой версии оказывается плохо работали запросы к внешним DNS при запросе внешних зон. Исправил этот баг, и бонусом добавил возможность указать несколько upstream серверов (они опрашиваются параллельно и отдается первый успешный ответ).
Поправил запуск через docker. Там не совпадал порты по умолчанию с портами указанными в инструкции по запуску, если не передать переменную окружения с нужным портом.
Теперь при запуске схема базы обновится автоматически и не потребуется прописывать `docker compose exec ...`
Самое крупное изменение - SOA записи. Теперь при создании доменной зоны можно ввести refresh, retry и expire параметры, а при запросе SOA будет возвращать соответствующий ответ. Т.е. вручную не нужно прописывать SOA записи в зоне, но нужно прописать `ns.<zone>.` записи для корректной работы (но об этом позже).
При удалении доменной зоны теперь не остается в базе "висячих" записей.
Еще обновил работу кэширования и теперь удаленные доменные зоны не висят в кэше.
Настроил CI/CD процессы и автоматизировал выгрузку релизов в DockerHob. А еще поправил запуск тестов в пайплайнах, т.к. они по факту вообще не запускались 😬
В первую очередь хочу добавить автоматическое создание ns. записей при создании зоны т.к. SOA ответы будут уже содержать такие данные (не очень хорошо, что их по факту нет).
Не все приложение сейчас покрыто логами а если и покрыто, то в разнобой (где-то через пакет log а в других местах используется slog).
К логам, я считаю, стоит добавить и возможность мониторить сервис, поэтому добавлю метод /metrics для возможности собрать метрики в Prometheus. Выделю отдельный мультиплексер для возможности разделения доменных имен метрик и REST, чтобы можно было не светить метриками во внешние сети.
Этот проект не стал одним из артефактов потерявшихся пет-проектов. Все благодаря инструментам, которые помогают не терять контекст проекта даже через месяц отлучения.
Если интересно какие инструменты для планирования я использую - маякните в комментах. Если будет интересно, то расскажу про них и в целом про то что у меня развернуто на локалхосте.
upd: ссылка на репо https://github.com/vesh95/dnso для тех кому интересно взглянуть












Держатели для катушек
После покупки 3D принтера и пары напечатанных моделей со стоков прикололся в 3D моделирование и решил забацать такие держатели для катушек.
Задумка простая - креплю DIN-рейку на стену, а на нее держатели с катушками. Первые модели были с элементами, даже не хочу рассказывать насколько они неподходящие оказались.
Позже я приделал "пиптик" чтобы трубка не наматывалась на катушку.
Крепления для рейки взял со стоков и просто прифигакал с держателю.
