<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:turbo="http://turbo.yandex.ru" version="2.0">
<channel>
<title>UzRef.com - Путь к знаниям</title>
<link>https://uzref.com/</link>
<language>ru</language>
<description>UzRef.com - Путь к знаниям</description>
<generator>DataLife Engine</generator><item turbo="true">
<title>Postgresus - self-hosted инструмент для резервного копирования и мониторинга PostgreSQL базы данных</title>
<guid isPermaLink="true">https://uzref.com/tools/76-postgresus-self-hosted-instrument-dlja-rezervnogo-kopirovanija-i-monitoringa-postgresql-bazy-dannyh.html</guid>
<link>https://uzref.com/tools/76-postgresus-self-hosted-instrument-dlja-rezervnogo-kopirovanija-i-monitoringa-postgresql-bazy-dannyh.html</link>
<description><![CDATA[<p><a href="https://uzref.com/uploads/posts/2025-12/1764862353_postgresus.jpg" class="highslide" target="_blank"><img src="https://uzref.com/uploads/posts/2025-12/thumbs/1764862353_postgresus.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;"></a> Postgresus - self-hosted инструмент для резервного копирования и мониторинга PostgreSQL базы данных</p>]]></description>
<turbo:content><![CDATA[ <p><b>Возможности:</b><br>- создание бекапов по расписанию для PostgreSQL 13-18;<br>- уведомления в Telegram, Slack, Discord, если бекап сломался или база недоступна;<br>- хранение бекапов локально, в S3 или Google Drive;<br>- health check базы данных раз в минуту;<br>- Apache 2.0 лицензия (полностью открытый);</p>
<p><br></p>
<p>Запуск через Docker:</p>
<pre class="language-markup"><code>docker run -d 
  --name postgresus 
  -p 4005:4005 
  -v ./postgresus-dаta:/postgresus-data 
  --restart unless-stopped 
  rostislavdugin/postgresus:latest</code></pre>
<p><br></p>
<p>📌 <a href="https://github.com/RostislavDugin/postgresus" target="_blank" rel="noopener external noreferrer"><b>GitHub</b></a></p> ]]></turbo:content>
<category><![CDATA[Инструменты]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Thu, 04 Dec 2025 20:32:42 +0500</pubDate>
</item><item turbo="true">
<title>Все пользуются Docker, но очень немногие знают, как дебажить контейнер Docker</title>
<guid isPermaLink="true">https://uzref.com/tips/74-hotite-bystro-uznat-kakie-fajly-menjalis-chasche-vsego-v-repozitorii.html</guid>
<link>https://uzref.com/tips/74-hotite-bystro-uznat-kakie-fajly-menjalis-chasche-vsego-v-repozitorii.html</link>
<description><![CDATA[<p>Нет, я не про docker logs, или docker inspect, или docker exec.</p>
<p>Я про docker events.</p>]]></description>
<turbo:content><![CDATA[ <p>Скорее всего, ты даже не знал, что он существует. Но он стримит низкоуровневые события в реальном времени прямо от Docker-демона; не только по твоему контейнеру.</p>
<p>Представь ситуацию:</p>
<p>Ваш контейнер в проде постоянно рестартится. А у вас локально всё ок.</p>
<p>И как настоящий герой, ты заходишь по SSH на сервер и начинаешь привычный дебаг-ритуал:</p>
<p>👉 docker logs → ничего<br>👉 docker inspect → статика<br>👉 docker exec → не успеваете подключиться, он умирает раньше</p>
<p>Знакомо, да?</p>
<p>Что дальше? Дай угадаю:</p>
<p>Ты начинаешь шаманить с Dockerfile и гонять его подряд через docker run. Просто потому, что никогда не слышал про docker events.</p>
<p>А теперь попробуй вот так:</p>
<pre class="language-markup"><code>docker events --filter container=&lt;your_container_id&gt;</code></pre>
<p>Пример вывода:</p>
<pre class="language-markup"><code>2025-05-04T18:20:01Z container create ...
2025-05-04T18:20:02Z container start ...
2025-05-04T18:20:03Z container health_status: unhealthy ...
2025-05-04T18:20:04Z container kill signal=SIGTERM
2025-05-04T18:20:04Z container restart</code></pre>
<p>И вуаля. Healthcheck завалился → контейнер прибили → Docker его автоматически перезапустил.</p>
<p>А в логах твоего приложения этого нет. Потому что healthcheck живёт вне основного процесса.</p>
<p>Бонус-фичи:</p>
<p>🔹Ограничить интервал по времени:</p>
<pre class="language-markup"><code>docker events --since 30m --until "2025-05-04T18:00:00"</code></pre>
<p>🔹Хотите структурированный вывод?</p>
<pre class="language-markup"><code>docker events --format '{{json .}}'</code></pre>
<p>🔹Нужен полный таймлайн по системе во время инцидента? Просто убери фильтр:</p>
<pre class="language-markup"><code>docker events</code></pre>
<p>И прежде чем сказать:</p>
<p>«Ну вообще-то, в современной инфре надо использовать Grafana, Loki, Prometheus для наблюдаемости…»</p>
<p>Окей. Удачи дебажить:</p>
<p>🔹OOM-киллы до того, как метрики успели заскрейпиться<br>🔹Пропущенные монтирования томов<br>🔹Сломанные init-контейнеры<br>🔹Сайдкары, которые тихо падают и рестартуются</p>
<p>docker events всё это видит. В реальном времени.</p>
<p>Если вы дебажите Docker без этого, вы не дебажите - вы гадаете.</p> ]]></turbo:content>
<category><![CDATA[Советы]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Thu, 02 Oct 2025 21:05:53 +0500</pubDate>
</item><item turbo="true">
<title>Хотите быстро узнать, какие файлы менялись чаще всего в репозитории?</title>
<guid isPermaLink="true">https://uzref.com/tips/75-hotite-bystro-uznat-kakie-fajly-menjalis-chasche-vsego-v-repozitorii.html</guid>
<link>https://uzref.com/tips/75-hotite-bystro-uznat-kakie-fajly-menjalis-chasche-vsego-v-repozitorii.html</link>
<description><![CDATA[<p>Используйте встроенные возможности git log:</p>]]></description>
<turbo:content><![CDATA[ <pre class="language-markup"><code># Топ-10 самых часто меняемых файлов
git log --pretty=format: --name-only | \
  sort | uniq -c | sort -nr | head -10</code></pre>
<p><br></p>
<p>💡 Отличный способ найти "проблемные" файлы: <br>именно они чаще всего требуют правок и могут быть источником багов.</p> ]]></turbo:content>
<category><![CDATA[Советы]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Thu, 02 Oct 2025 21:05:53 +0500</pubDate>
</item><item turbo="true">
<title>KubeDiagrams - инструмент, который автоматически генерирует визуальные архитектурные диаграммы из Kubernetes-манифестов, Helm-чартов и живых кластеров.</title>
<guid isPermaLink="true">https://uzref.com/tools/73-kubediagrams-instrument-kotoryj-avtomaticheski-generiruet-vizualnye-arhitekturnye-diagrammy-iz-kubernetes-manifestov-helm-chartov-i-zhivyh-klasterov.html</guid>
<link>https://uzref.com/tools/73-kubediagrams-instrument-kotoryj-avtomaticheski-generiruet-vizualnye-arhitekturnye-diagrammy-iz-kubernetes-manifestov-helm-chartov-i-zhivyh-klasterov.html</link>
<description><![CDATA[<p><img src="https://uzref.com/uploads/posts/2025-08/thumbs/1755876361_kubediagrams.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;">KubeDiagrams — это инструмент, который автоматически генерирует визуальные архитектурные диаграммы из Kubernetes-манифестов, Helm-чартов и живых кластеров.</p>]]></description>
<turbo:content><![CDATA[ <p>Он поддерживает более 47 типов ресурсов, настраиваемую группировку по namespace и labels, а также умеет работать с кастомными ресурсами.</p>
<p>Забираем с <a href="https://github.com/philippemerle/KubeDiagrams" target="_blank" rel="noopener external noreferrer"><b>GitHub</b></a></p> ]]></turbo:content>
<category><![CDATA[Инструменты]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Fri, 22 Aug 2025 20:26:24 +0500</pubDate>
</item><item turbo="true">
<title>Freelens — это кроссплатформенный GUI для управления Kubernetes-кластерами.</title>
<guid isPermaLink="true">https://uzref.com/tools/72-freelens-jeto-krossplatformennyj-gui-dlja-upravlenija-kubernetes-klasterami.html</guid>
<link>https://uzref.com/tools/72-freelens-jeto-krossplatformennyj-gui-dlja-upravlenija-kubernetes-klasterami.html</link>
<description><![CDATA[<p><img src="https://uzref.com/uploads/posts/2025-08/thumbs/1755534324_freelens.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;">Freelens — это кроссплатформенный GUI для управления Kubernetes-кластерами.</p>]]></description>
<turbo:content><![CDATA[ <p>В комплекте уже идут kubectl и Helm, есть поддержка kubeconfig, работает на macOS, Linux и Windows.</p>
<p>➤ <a href="https://github.com/freelensapp/freelens" rel="external noopener noreferrer">GitHub</a></p> ]]></turbo:content>
<category><![CDATA[Инструменты]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Mon, 18 Aug 2025 21:24:45 +0500</pubDate>
</item><item turbo="true">
<title>🖥 LocalStack — локальный эмулятор AWS</title>
<guid isPermaLink="true">https://uzref.com/tools/71--localstack-lokalnyj-jemuljator-aws.html</guid>
<link>https://uzref.com/tools/71--localstack-lokalnyj-jemuljator-aws.html</link>
<description><![CDATA[<p><img src="https://uzref.com/uploads/posts/2025-08/thumbs/1754325567_localstack.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;"></p>
<p>— python3 -m pip install localstack</p>
<p>🟡LocalStack - это эмулятор облачных сервисов, который запускается в 1 контейнере на вашем ноутбуке или в вашей среде CI.</p>]]></description>
<turbo:content><![CDATA[ <p>С помощью LocalStack вы можете запускать свои приложения AWS или Lambdas полностью на своей локальной машине без подключения к удаленному облачному провайдеру.</p>
<p>🟡Если вы тестируете сложные приложения CDK или конфигурации Terraform или только начинаете знакомиться с сервисами AWS, LocalStack поможет ускорить и упростить процесс тестирования и разработки.</p>
<p>🖥 <a href="https://github.com/localstack/localstack" rel="external noopener noreferrer"><b>GitHub</b></a></p> ]]></turbo:content>
<category><![CDATA[Инструменты]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Mon, 04 Aug 2025 21:39:44 +0500</pubDate>
</item><item turbo="true">
<title>Какие процессы активно используют swap?</title>
<guid isPermaLink="true">https://uzref.com/tips/70-kakie-processy-aktivno-ispolzujut-swap.html</guid>
<link>https://uzref.com/tips/70-kakie-processy-aktivno-ispolzujut-swap.html</link>
<description><![CDATA[<p>Проверь, какие процессы активно используют swap — даже если в системе вроде бы хватает RAM.</p>]]></description>
<turbo:content><![CDATA[ <p>Это поможет найти медленные службы, которые вы не ожидали увидеть в свопе, и улучшить производительность.</p>
<p><br></p>
<pre class="language-markup"><code>for pid in $(ls /proc | grep -E '^[0-9]+$'); do  
  cmd=$(cat /proc/$pid/comm 2&gt;/dev/null)  
  swap=$(grep VmSwap /proc/$pid/status 2&gt;/dev/null | awk '{print $2}')  
  if [ "$swap" != "" ] &amp;&amp; [ "$swap" -gt 0 ]; then  
    echo "$swap KB swap used by $cmd (PID $pid)"  
  fi  
done | sort -nr | head  </code></pre>
<p><br></p>
<p>🐌 Процессы, активно использующие swap (swap hog detector)</p>
<p>📌 Даже если swap включен "про запас", вы удивитесь, сколько "вроде бы активных" сервисов частично выгружены на диск — отсюда тормоза, задержки в API, медленные реакции.</p>
<p>Решения:<br>– пересмотреть vm.swappiness <br>– перезапустить эти процессы <br>– увеличить RAM или выделить hugepages</p> ]]></turbo:content>
<category><![CDATA[Советы]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Mon, 04 Aug 2025 21:38:03 +0500</pubDate>
</item><item turbo="true">
<title>🌐 Erda — облачная платформа корпоративного уровня с открытым исходным кодом.</title>
<guid isPermaLink="true">https://uzref.com/tools/69--erda-oblachnaja-platforma-korporativnogo-urovnja-s-otkrytym-ishodnym-kodom.html</guid>
<link>https://uzref.com/tools/69--erda-oblachnaja-platforma-korporativnogo-urovnja-s-otkrytym-ishodnym-kodom.html</link>
<description><![CDATA[<p><img src="https://uzref.com/uploads/posts/2025-08/thumbs/1754325401_erda.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;">Проект объединяет инструменты для DevOps, управления микросервисами и работы с мультиоблачными средами на базе Kubernetes. </p>]]></description>
<turbo:content><![CDATA[ <p>Платформа выделяется комплексным подходом к мониторингу, логированию и edge-вычислениям. Особенно полезна для команд, работающих с распределенными системами и сложными микросервисными архитектурами.</p>
<p>🤖 <b><a href="https://github.com/erda-project/erda" rel="external noopener noreferrer">GitHub</a></b></p> ]]></turbo:content>
<category><![CDATA[Инструменты]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Mon, 04 Aug 2025 21:36:30 +0500</pubDate>
</item><item turbo="true">
<title>Короткий и полезный трюк для работы в терминале</title>
<guid isPermaLink="true">https://uzref.com/tips/68-korotkij-i-poleznyj-trjuk-dlja-raboty-v-terminale.html</guid>
<link>https://uzref.com/tips/68-korotkij-i-poleznyj-trjuk-dlja-raboty-v-terminale.html</link>
<description><![CDATA[<p><img src="https://uzref.com/uploads/posts/2025-08/thumbs/1754325251_lin.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;">Нередко бывает, что ты уже набрал команду, собираешься её запустить — и тут вспоминаешь, что перед этим нужно выполнить другую операцию. Но при этом хочется, чтобы набранная команда осталась в истории, чтобы не приходилось писать её заново</p>]]></description>
<turbo:content><![CDATA[ <p>Для этого есть удобное сокращение: Alt + Shift + #. Оно просто закомментирует текущую строку — команда не выполнится, но сохранится в истории, и позже её можно будет легко извлечь стрелкой вверх, удалить # и запустить</p> ]]></turbo:content>
<category><![CDATA[Советы]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Mon, 04 Aug 2025 21:33:31 +0500</pubDate>
</item><item turbo="true">
<title>Kamaji — это инструмент для развёртывания и управления Managed Kubernetes-сервисом с минимальными операционными затратами.</title>
<guid isPermaLink="true">https://uzref.com/tools/67-kamaji-jeto-instrument-dlja-razvertyvanija-i-upravlenija-managed-kubernetes-servisom-s-minimalnymi-operacionnymi-zatratami.html</guid>
<link>https://uzref.com/tools/67-kamaji-jeto-instrument-dlja-razvertyvanija-i-upravlenija-managed-kubernetes-servisom-s-minimalnymi-operacionnymi-zatratami.html</link>
<description><![CDATA[<p><a href="https://uzref.com/uploads/posts/2025-08/1754325084_kamaji.jpg" class="highslide" target="_blank"><img src="https://uzref.com/uploads/posts/2025-08/thumbs/1754325084_kamaji.jpg" alt="" style="display:block;margin-left:auto;margin-right:auto;"></a></p>]]></description>
<turbo:content><![CDATA[ <p>С Kamaji вы можете запускать и обслуживать сотни Kubernetes-кластеров, как гипермасштабный облачный провайдер.</p>
<p><br></p>
<p>Подробнее: <b><a href="https://github.com/clastix/kamaji" rel="external noopener noreferrer">Github</a></b></p> ]]></turbo:content>
<category><![CDATA[Инструменты]]></category>
<dc:creator>JET</dc:creator>
<pubDate>Mon, 04 Aug 2025 21:31:11 +0500</pubDate>
</item></channel></rss>