스킬 routeros-container
📦

routeros-container

안전

MikroTik RouterOS에서 컨테이너 관리

MikroTik RouterOS에서 컨테이너를 실행하려면 표준 Docker와 크게 다른 자체 OCI 구현을 이해해야 합니다. 이 스킬은 RouterOS 기기에서 컨테이너 설정, 네트워킹, 이미지 관리 및 라이프사이클 운영에 대한 단계별 가이드를 제공합니다.

지원: Claude Codex Code(CC)
🥉 72 브론즈
1

스킬 ZIP 다운로드

2

Claude에서 업로드

설정 → 기능 → 스킬 → 스킬 업로드로 이동

3

토글을 켜고 사용 시작

테스트해 보기

"routeros-container" 사용 중입니다. IP가 172.17.0.2인 컨테이너를 위한 VETH 인터페이스 및 브리지 생성

예상 결과:

1. VETH 쌍 생성: /interface/veth/add name=veth-myapp address=172.17.0.2/24 gateway=172.17.0.1
2. 브리지 생성: /interface/bridge/add name=containers
3. VETH를 브리지에 추가: /interface/bridge/port/add bridge=containers interface=veth-myapp
4. 게이트웨이 IP 할당: /ip/address/add address=172.17.0.1/24 interface=containers

"routeros-container" 사용 중입니다. myapp이라는 이름의 컨테이너 시작 및 상태 확인

예상 결과:

1. 시작: /container/start [find tag~"myapp"]
2. 상태 확인: /container/print
3. 로그 확인: /log/print where topics~"container"
4. REST API의 경우: GET /rest/container은 .running 필드(문자열 "true"/"false")를 포함한 컨테이너 목록을 반환합니다.

보안 감사

안전
v2 • 4/16/2026

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.

1
스캔된 파일
348
분석된 줄 수
0
발견 사항
2
총 감사 수
보안 문제를 찾지 못했습니다
감사자: claude 감사 이력 보기 →

품질 점수

38
아키텍처
100
유지보수성
87
콘텐츠
32
커뮤니티
100
보안
100
사양 준수

만들 수 있는 것

RouterOS 컨테이너에 Pi-hole 배포

VETH 네트워킹, 외부 디스크의 영구 스토리지, 웹 인터페이스 암호를 위한 적절한 환경 변수를 사용하여 Pi-hole 광고 차단 컨테이너를 설정합니다.

L2 브리지 컨테이너를 통해 netinstall 서비스 실행

물리적 장치와 동일한 네트워크 세그먼트에서 BOOTP/TFTP netinstall 서비스를 제공하기 위해 레이어 2 브리지 액세스가 있는 컨테이너를 구성합니다.

REST API를 통한 컨테이너 관리 자동화

RouterOS REST API를 사용하여 컨테이너를 프로그래매틱하게 나열, 시작, 중지, 삭제하고 비동기 작업에 대한 적절한 폴링을 수행합니다.

이 프롬프트를 사용해 보세요

초급: 라우터에서 컨테이너 활성화
RouterOS 7.x가 실행되는 MikroTik 라우터가 있습니다. 첫 번째 컨테이너를 실행할 수 있도록 컨테이너 서브시스템을 활성화하고 기본 VETH 네트워킹을 설정하는 것을 도와주세요.
중급: Docker Hub에서 컨테이너 가져오기 및 실행
RouterOS 기기에서 Docker Hub를 통해 Alpine 컨테이너를 가져오고, IP가 172.17.0.2인 VETH 인터페이스를 할당하고, 환경 변수를 설정하고 싶습니다. 단계별로 안내해 주세요.
고급: 커스텀 단일 레이어 이미지 빌드 및 가져오기
RouterOS 요구사항(단일 레이어, gzip 압축 없음, Docker v1 manifest 형식)을 충족하는 커스텀 OCI 이미지를 빌드해야 합니다. 그런 다음 tar 파일로 가져오고 인라인 환경 변수 및 마운트를 구성해야 합니다.
전문가: REST API 컨테이너 라이프사이클 자동화
RouterOS REST API를 사용하여 컨테이너를 목록화하고, ID로 시작하고, 실행 상태를 확인하며(문자열 불리언 값 고려), stop-then-delete 시퀀스에 대한 적절한 재시도 논리로 삭제하는 TypeScript 스크립트를 작성하세요.

모범 사례

  • 컨테이너 볼륨은 항상 외부 디스크 스토리지에 배치하고, 내부 플래시 스토리지에는 배치하지 마십시오
  • RouterOS 7.21+에서는 더 간단한 자체 포함 컨테이너 정의를 위해 env= 및 mount= 속성을 사용하십시오
  • REST API를 사용할 때 .running 필드는 불리언 값이 아닌 문자열 "true"/"false"를 반환하며, DELETE는 컨테이너가 완전히 중지된 후에만 수행할 수 있다는 점을 기억하십시오

피하기

  • RouterOS 7.18+에서 /system/reboot 대신 /system/package/apply-changes를 사용하지 않으면 업로드된 패키지가 삭제될 수 있음
  • RouterOS가 로드할 수 없는 다중 레이어 또는 gzip 압축 tar 이미지 사용 시도
  • netinstall과 같이 레이어 2 브리지 액세스가 필요할 때 /app YAML 시스템 사용 시도

자주 묻는 질문

컨테이너 지원을 위해 어떤 RouterOS 버전이 필요한가요?
컨테이너 추가 패키지가 설치된 RouterOS 7.x가 필요합니다. 컨테이너 기능은 버전에 따라 다르며, 환경 변수 및 마운트 구문에서 7.20과 7.21 사이에 중요한 변경사항이 있습니다.
RouterOS에서 컨테이너를 위해 device-mode가 필요한 이유는 무엇인가요?
device-mode는 컨테이너를 포함한 여러 기능을 제한하는 RouterOS 보안 기능입니다. 원격 활성화를 방지하기 위해 리셋 버튼 또는 전원 순환을 통한 물리적 확인이 필요합니다.
RouterOS에서 표준 Docker 이미지를 사용할 수 있나요?
Docker Hub에서의 레지스트리 풀은 직접 작동합니다. 로컬 tar 가져오기는 단일 레이어, 비압축 상태여야 하며 Docker v1 manifest 형식을 사용해야 합니다. 다중 레이어 및 gzip 압축 이미지는 지원되지 않습니다.
인라인과 명명 env/mount 구성의 차이점은 무엇인가요?
인라인 방식(/container/add에서 env= 및 mount=)은 컨테이너를 자체적으로 유지하는 모던한 7.21+ 방식입니다. 명명 목록은 별도의 /container/envs/add 및 /container/mounts/add 객체가 필요하며 더 많은 버전에서 작동합니다.
프로그래매틱하게 컨테이너를 관리하려면 어떻게 하나요?
/rest/container에서 RouterOS REST API를 사용하십시오. 주요 엔드포인트로는 목록화를 위한 GET, /container/start 또는 /container/stop을 위한 POST, 삭제를 위한 DELETE가 있습니다. .running 필드는 불리언이 아닌 문자열입니다.
/app YAML과 수동 컨테이너 설정 중 언제 무엇을 사용해야 하나요?
표준 배포 및 포트 포워딩에는 /app YAML(RouterOS 7.22+)을 사용하십시오. netinstall, DHCP 릴레이 또는 직접 네트워크 액세스와 같이 레이어 2 액세스가 필요할 때는 수동 VETH/브리지 설정을 사용하십시오.

개발자 세부 정보

작성자

tikoci

라이선스

MIT

참조

main

파일 구조

📄 SKILL.md