Привет! В этой статье расскажу, как я купил Raspberry Pi 5 и превратил его в полноценный домашний сервер для всяких экспериментов. Сейчас на нем крутятся: Telegram-бот на базе Claude, автоматический новостной агрегатор (тоже в формате бота), сетевой блокировщик рекламы Pi-hole (спойлер: с переменным успехом), NAS для домашней медиатеки и этот самый блог.

Распаковка Raspberry Pi 5

Зачем мне понадобился одноплатник

Я время от времени делал пет-проекты — ботов и даже небольшой сайт в учебных целях, — но все обычно заканчивалось одинаково: закрыл крышку ноутбука, и проект «уснул» вместе с ним. Хотелось, чтобы мои штуки продолжали жить отдельно от моего ноутбука, а не существовали только пока он включен.

Можно было бы все это развернуть на VPS или в облаке, но мне хотелось свое железо дома: дешевое в эксплуатации, всегда под рукой и без ограничений для экспериментов.

Так выбор и пал на Raspberry Pi 5 с 8 ГБ RAM. По железу там все, что нужно для таких задач: четыре ядра Cortex-A76 на 2.4 ГГц, гигабитный Ethernet, PCIe 2.0 и нормальная производительность без ощущения «игрушки».

Собранный Raspberry Pi 5

@blast_chat_bot — AI-собеседник в Telegram

Это Telegram-бот — по сути минимальная обертка над Claude. Идея была простая: не платить отдельно за API, если уже есть подписка, и использовать ее максимально утилитарно.

Поэтому у меня рядом крутится Docker-контейнер с Claude CLI в headless-режиме. Бот просто отправляет туда запрос, получает ответ и возвращает его в Telegram. Технически это выглядит очень просто: сообщение → команда → ответ → Telegram.

Не знаю, используют ли так еще кто-то, но для моих задач это оказалось удивительно удобным решением.

Чат с друзьями и «контекстная реальность»

Потом я добавил этого бота в чат с друзьями — и тут начались нюансы.

Оказалось, что Claude по умолчанию живет в мире, где с ним разговаривает один человек. А в групповом чате людей внезапно больше одного, и все это начинает быстро превращаться в кашу.

Мне захотелось, чтобы бот:

  • понимал, кто именно к нему обращается
  • видел контекст переписки
  • не отвечал «в пустоту»

Пришлось немного прокачать логику. Теперь бот:

  • различает авторов сообщений
  • читает весь чат, даже если его не тегнули

Он просто слушает все, что происходит в группе, и складывает это в скользящий буфер в таком виде: [время] Петя Иванов (@petya): текст.

Когда кто-то обращается к боту, я перед запросом добавляю:

  • этот буфер
  • и пометку вида: «сейчас с тобой говорит Петя Иванов (@petya)»

В итоге Claude видит не только вопрос, но и контекст разговора, и отвечает уже осмысленно, а не как будто его спросили в вакууме.

И все это — без tool use, без сложной архитектуры. Просто текстовый контекст и немного логики. Дешево, сердито и, как ни странно, работает.

blast-news — утренний дайджест на автопилоте

Следующий бот — это автоматический агрегатор новостей. Каждый день он собирает контент из моих источников и формирует дайджест с помощью Claude.

Проблема была довольно банальная: каналов и постов становится все больше, и в какой-то момент их чтение превращается во вторую работу. Но не читать тоже не получается — привет FOMO и тревожности.

В какой-то момент я просто решил: раз я не успеваю читать все, пусть это делает бот.

Источники

Бот тянет новости примерно из двух десятков Telegram-каналов и нескольких сайтов: Hacker News, Lobste.rs, TLDR Tech и других.

Умное суммирование

Для каждого источника у меня свой промпт для Claude. Идея в том, что разные источники пишут по-разному, поэтому и выжимка должна быть разной: где-то сухая, где-то более контекстная, где-то с акцентом на детали.

Как это работает

Раз в сутки бот:

  1. Собирает свежие посты из Telegram
  2. Парсит веб-источники
  3. Убирает дубли
  4. Генерирует саммари через Claude
  5. Отправляет готовый дайджест мне в личку

Ничего уникального в этом нет — подобных решений полно. Но по факту бот реально помогает меньше думскроллить и чуть спокойнее относиться к тому, что ты что-то пропускаешь.

ava-code.com — этот блог

Проект с сайтом — это, собственно, блог, где ты сейчас это читаешь.

Сразу дисклеймер: сайт — чистый вайбкод. Делал его «на ощущениях», поэтому если где-то что-то криво — это не баг, это стиль.

Тут можно зарегистрироваться и ставить лайки. Зачем — хороший вопрос. Пока что это функция уровня «пусть будет». Но вдруг когда-нибудь найдется человек, которому захочется нажать кнопку просто из любопытства.

Обновляться это все будет нечасто, но это и не цель. Зато у меня уже лежит набор Arduino, так что следующий пост вполне может быть про него. Или про что-то еще — тут как пойдет.

NAS — домашняя медиатека

Дальше у нас идет домашний NAS на минималках.

Я поднял сетевое хранилище на базе Samba: подключил к Raspberry Pi внешний USB-диск и расшарил его по локальной сети. В итоге любой девайс дома — ноутбук, планшет или телевизор — может подключиться и стримить контент напрямую. Получился такой маленький личный «Netflix», только без подписки и с моими файлами.

Настройка

Все заняло примерно полчаса:

  • подключил диск
  • отформатировал в ext4
  • настроил автомонтирование
  • поднял Samba

И на этом все. Без тяжелых NAS-дистрибутивов вроде TrueNAS или OpenMediaVault — для моих задач это избыточно.

Как используется

По сути это просто хранилище для фильмов и сериалов. И этого достаточно: все работает стабильно, быстро и без лишней сложности.

Pi-hole — реклама, прощай

Первое, что я поставил на малинку — Pi-hole. Если коротко, это DNS-сервер, который блокирует рекламу и трекинг на уровне сети.

Схема простая: прописываешь IP Raspberry Pi как DNS на роутере — и реклама исчезает на всех устройствах сразу. Телефоны, ноутбуки, телевизоры — все начинает жить без баннеров.

Как это живет

Все крутится в Docker-контейнере. У Pi-hole есть удобный веб-интерфейс со статистикой:

  • сколько запросов заблокировано
  • какие домены самые активные
  • какие устройства больше всего «шумят»

У меня стабильно режется около 30% DNS-запросов — и это без тонкой настройки, просто на стандартных списках.

Реальность, как всегда, вмешалась

Я уже почти поверил, что реклама побеждена…

Но оказалось, что на роутере от провайдера нельзя поменять DNS вообще никак. Ни через настройки, ни через обходные пути — просто нет такой возможности.

Так что пока не куплю нормальный роутер, реклама остается частью моей жизни. А Pi-hole пока просто стоит и делает свою работу, слегка обиженно.

Итоги

Стоило ли оно того? Короткий ответ: да. Длинный: дааа.

По ресурсам все выглядит даже слишком спокойно: все сервисы вместе используют меньше гигабайта RAM из восьми доступных, а загрузка CPU в среднем не поднимается выше 10%. Raspberry Pi даже не замечает, что на нем что-то происходит.

Что получилось хорошо

  • полный контроль над железом и софтом
  • Docker, который делает деплой и обновления максимально простыми
  • NAS из подручных средств, который реально работает

Если у тебя есть несколько pet-проектов, которым не нужны серьезные вычисления, Raspberry Pi 5 оказывается неожиданно удобной штукой для self-hosting’а.

8 ГБ RAM — это с запасом для ботов и небольших веб-приложений, а Cortex-A76 справляется с задачами заметно бодрее, чем ожидаешь от такой маленькой коробки.

Короче, получился небольшой домашний «мини-датацентр», который просто тихо делает свою работу.