routeros-container
Управление контейнерами на MikroTik RouterOS
Запуск контейнеров на MikroTik RouterOS требует понимания его пользовательской реализации OCI, которая существенно отличается от стандартного Docker. Этот навык предоставляет пошаговое руководство по настройке контейнеров, сетевых подключений, управлению образами и операциям жизненного цикла на устройствах RouterOS.
Скачать ZIP навыка
Загрузить в Claude
Перейдите в Settings → Capabilities → Skills → Upload skill
Включите и начните использовать
Протестировать
Использование «routeros-container». Create a VETH interface and bridge for a container with IP 172.17.0.2
Ожидаемый результат:
1. Create VETH pair: /interface/veth/add name=veth-myapp address=172.17.0.2/24 gateway=172.17.0.1
2. Create bridge: /interface/bridge/add name=containers
3. Add VETH to bridge: /interface/bridge/port/add bridge=containers interface=veth-myapp
4. Assign gateway IP: /ip/address/add address=172.17.0.1/24 interface=containers
Использование «routeros-container». Start a container named myapp and check its status
Ожидаемый результат:
1. Start: /container/start [find tag~"myapp"]
2. Check status: /container/print
3. View logs: /log/print where topics~"container"
4. For REST API: GET /rest/container returns container list with .running field (string "true"/"false")
Аудит безопасности
БезопасноThis skill is a Markdown documentation file providing instructions and examples for the MikroTik RouterOS /container subsystem. The static scanner flagged 171 patterns, but all are false positives. The 'external_commands' detections match RouterOS CLI syntax inside Markdown code fences, not actual shell execution. The 'network' detections reference example URLs and IPs in documentation snippets. The 'weak cryptographic algorithm' and 'path traversal' findings have no basis in the content. No executable code exists in this file - it is purely instructional documentation for network administrators.
Оценка качества
Что вы можете построить
Развертывание Pi-hole в контейнере RouterOS
Настройка контейнера для блокировки рекламы Pi-hole с сетевым подключением VETH, постоянным хранилищем на внешнем диске и правильными переменными окружения для веб-интерфейса.
Запуск службы netinstall через контейнер с мостом L2
Настройка контейнера с доступом к мосту уровня 2 для предоставления служб BOOTP/TFTP netinstall в том же сегменте сети, что и физические устройства.
Автоматизация управления контейнерами через REST API
Использование REST API RouterOS для программного перечисления, запуска, остановки и удаления контейнеров с правильным опросом состояния для асинхронных операций.
Попробуйте эти промпты
У меня есть маршрутизатор MikroTik с RouterOS 7.x. Помогите мне включить подсистему контейнеров и настроить базовую сеть VETH, чтобы я мог запустить свой первый контейнер.
Я хочу загрузить контейнер Alpine из Docker Hub на мое устройство RouterOS, назначить ему интерфейс VETH с IP 172.17.0.2 и установить переменные окружения. Проведите меня через эти шаги.
Мне нужно собрать пользовательский OCI-образ для RouterOS, соответствующий его требованиям: один слой, без сжатия gzip, формат манифеста Docker v1. Затем импортировать его как tar-файл и настроить встроенные переменные окружения и монтирования.
Напишите TypeScript-скрипт, который использует REST API RouterOS для перечисления контейнеров, запуска одного по ID, проверки его статуса выполнения (с учетом строковых булевых значений) и удаления с правильной логикой повторных попыток для последовательности остановки и удаления.
Лучшие практики
- Всегда размещайте тома контейнеров на внешнем дисковом хранилище, никогда на внутренней флеш-памяти
- Используйте встроенные свойства env= и mount= в RouterOS 7.21+ для более простых самодостаточных определений контейнеров
- При использовании REST API помните, что поле .running возвращает строки "true"/"false", а не булевы значения, а DELETE требует полной остановки контейнера
Избегать
- Использование /system/reboot вместо /system/package/apply-changes в RouterOS 7.18+, что приведет к удалению загруженных пакетов
- Попытка запустить многослойные или сжатые gzip tar-образы, которые RouterOS не может загрузить
- Попытка использовать систему /app YAML, когда требуется доступ к мосту уровня 2, например, для netinstall