mirrord: запуск локальных процессов в среде Kubernetes

mirrord: запуск локальных процессов в среде Kubernetes

mirrord — инструмент для запуска локальных процессов в среде Kubernetes, имитируя работу пода с реальными переменными окружения и сетевыми настройками.

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

Проект написан на Go и поставляется как расширение для VS Code, плагин для IntelliJ и CLI-инструмент. Перед использованием стоит учесть, что он находится на ранней стадии разработки, поэтому могут быть недостатки и ограничения.

Проект mirrord от компании MetalBear позволяет запускать локальные процессы внутри работающего кластера Kubernetes. Это упрощает разработку, поскольку твой код выполняется на твоей машине, но при этом его трафик, файлы и переменные окружения передаются через выбранный под в кластере. Это дает возможность работать с реальными данными и конфигурациями сервиса, не нарушая работу других пользователей кластера.

mirrord поддерживает несколько способов использования: как расширение для VS Code, плагин для IntelliJ и как инструмент командной строки (CLI). Проект уже был принят такими компаниями, как monday.com, SurveyMonkey и Cadence.

Установка и запуск

Для работы с mirrord требуется доступ к Kubernetes API через конфигурацию kubeconfig на твоем компьютере. В зависимости от твоих предпочтений, ты можешь установить mirrord одним из следующих способов:

  • С использованием Homebrew:
    brew install metalbear-co/mirrord/mirrord
  • С использованием cURL:
    curl -fsSL https://raw.githubusercontent.com/metalbear-co/mirrord/main/scripts/install.sh | bash
  • С использованием Nix:
    nix-env -iA nixpkgs.mirrord
    nix profile install nixpkgs#mirrord
  • На Windows с помощью Chocolatey:
    choco install --pre mirrord

Чтобы использовать mirrord, запусти команду:

mirrord exec <process command> --target <target-path>

Например:

mirrord exec node app.js --target pod/my-pod

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

Когда ты выбираешь под для имитации, mirrord запускает новый под на том же узле, что и выбранный. Этот новый под используется для соединения твоего локального процесса с имитируемым подом: он зеркалит входящий трафик и маршрутизирует исходящий трафик через выбранный под, а также обрабатывает чтение и запись файлов, а также переменные окружения.

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

  • CAP_NET_ADMIN и CAP_NET_RAW — для изменения таблиц маршрутизации
  • CAP_SYS_PTRACE — для чтения переменных окружения целевого пода
  • CAP_SYS_ADMIN — для присоединения к сетевому пространству имен целевого пода

Некоторые из этих прав можно отключить в конфигурации, но это может ограничить функциональность mirrord.

Интеграция с AI кодирующими агентами

mirrord также совместим с различными AI кодирующими агентами, такими как Claude Code и Codex CLI. Это позволяет запускать и проверять генерируемый код с реальными сервисами кластера без необходимости разворачивания новых версий. Если твоему агенту заблокированы платные функции, он может самостоятельно начать семидневную пробную версию, не требуя учетной записи или кредитной карты.

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

Ограничения

Хотя mirrord предоставляет множество возможностей, для его успешного функционирования необходимо, чтобы на кластерных узлах были доступны соответствующие Linux-правила. В противном случае некоторые функции могут оказаться недоступными.

Если ты столкнешься с проблемами или у тебя есть вопросы, есть возможность получения помощи через Slack или через обсуждения на GitHub.

Радар проекта: 83 из 100 — зрелый и живой проект

ИмпульсТемпЗрелостьСообществоСвежестьСтартПродакшенДовериеДокументацияЭкосистема83
  • Импульс 17 ≈ 1 звезда в день
  • Темп разработки 100 1050 коммитов за 12 недель
  • Зрелость 100 проекту 4 года, больше 100 релизов
  • Сообщество 73 77 участников, 225 форков
  • Свежесть 99 последний коммит — 1 день назад
  • Быстрый старт 65 есть: команда установки, сайт/демо
  • Готовность к продакшену 100 релиз 3.282.0, автосборка, тесты
  • Безопасность и доверие 100 лицензия MIT, SECURITY.md, организация
  • Документация 98 README 8.2 тыс. знаков, 22 раздела
  • Экосистема 73 21 подписчик на обновления, 20 тем
Как считаем

Только открытые данные GitHub на 31.10.2026, без оценок нейросети. Каждая ось — от 0 до 100, итог — среднее.

  • Импульс — звёзд в день: за время наших замеров, а пока их нет — за всю жизнь проекта; 200 в день — максимум.
  • Темп разработки — коммитов за последние 12 недель; 300 — максимум. Пока GitHub не досчитал статистику, ось не учитывается.
  • Зрелость — возраст проекта (3 года — максимум) и число релизов (30 — максимум), поровну.
  • Сообщество — участников с коммитами (200 — максимум) и форков (5000 — максимум), поровну.
  • Свежесть — дней с последнего коммита: сегодня — 100, полгода и больше или архив — 0.
  • Быстрый старт — в README есть команда установки, раздел «быстрый старт» или примеры использования, в репозитории — Docker и папка примеров, у проекта есть сайт или демо.
  • Готовность к продакшену — релизы, версия 1.0 и выше, автосборка (GitHub Actions), тесты, лицензия, журнал изменений.
  • Безопасность и доверие — открытая лицензия (своя — половина балла), политика безопасности (SECURITY.md), проект организации, правила для участников, не в архиве.
  • Документация — объём и структура README, папка docs или сайт, оценка «здоровья сообщества» GitHub.
  • Экосистема — звёзды (50 тыс. — максимум), подписчики на обновления (1000 — максимум), темы репозитория.

Открыть на GitHub: metalbear-co/mirrord →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте