스킬 routeros-app-yaml
📦

routeros-app-yaml

안전 ⚙️ 외부 명령어🌐 네트워크 접근

RouterOS 컨테이너 YAML 구성 작성

MikroTik RouterOS 컨테이너 애플리케이션을 위한 YAML 구성을 생성하고 검증합니다. 이 스킬은 docker-compose 지식 없이도 RouterOS /app 서브시스템을 위한 서비스, 포트, 볼륨, 네트워크를 정의하는 데 도움을 줍니다.

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

스킬 ZIP 다운로드

2

Claude에서 업로드

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

3

토글을 켜고 사용 시작

테스트해 보기

"routeros-app-yaml" 사용 중입니다. 포트 8123에서 영구 스토리지를 사용하는 Home Assistant 컨테이너를 위한 /app YAML 생성

예상 결과:

  • name, services, volumes, networks 섹션이 포함된 YAML 파일.
  • 웹 서비스는 포트 8123가 매핑된 ghcr.io/home-assistant/home-assistant 이미지를 사용합니다.
  • home-assistant-config라는 명명된 볼륨이 /config에 마운트됩니다.
  • 신뢰성을 위해 재시작 정책이 always로 설정됩니다.

"routeros-app-yaml" 사용 중입니다. RouterOS YAML에서 이전 포트 형식과 새 포트 형식의 차이점 표시

예상 결과:

  • 이전 OCI 스타일은 프로토콜 앞에 슬래시를 사용합니다: 8080:80/tcp
  • 새로운 RouterOS 7.23 스타일은 콜론을 사용합니다: 8080:80:web:tcp
  • 두 형식 모두 유효합니다. 7.23beta2 이상의 새 배포에서는 콜론 스타일을 선호해야 합니다.
  • target, published, protocol 필드를 포함한 긴 형식의 객체 구문은 모든 버전에서 작동합니다.

보안 감사

안전
v2 • 4/16/2026

All 159 static analysis findings are false positives. The skill contains only documentation and YAML configuration examples for RouterOS container applications. There is no executable code, no actual shell commands, no network requests, and no credential handling. The static scanner flagged YAML examples in markdown code blocks as security risks (for example, backticks in YAML values, example URLs in documentation, and placeholder IP addresses in configuration samples). After manual review, no genuine security issues were found.

2
스캔된 파일
453
분석된 줄 수
5
발견 사항
2
총 감사 수
낮은 위험 문제 (3)
False positive: External command detection in YAML documentation
The static scanner flagged 132 locations as external command execution. These are YAML configuration examples and markdown documentation, not executable code. Examples include shell commands in YAML entrypoint values (for example, nginx -g daemon off in SKILL.md line 32 and references/examples.md line 31) and backtick-formatted text in markdown. No actual command execution exists.
False positive: Network pattern detection in documentation URLs
The static scanner flagged 13 locations as network risks including hardcoded URLs, hardcoded IP addresses, and fetch API calls. All are documentation examples: example.com URLs in YAML samples (references/examples.md lines 19, 21), example IP addresses like 192.168.1.1 in port mapping examples (SKILL.md line 110, references/examples.md line 145), and TypeScript fetch snippets showing RouterOS REST API usage (SKILL.md lines 216, 222). No actual network requests are made by this skill.
False positive: Blocker patterns misidentified in YAML content
The static scanner flagged weak cryptographic algorithms, Windows SAM database references, LLM role token injection, and system reconnaissance patterns. None of these patterns exist in the actual file content. The scanner likely misidentified YAML property names or markdown formatting as security threats.

위험 요인

⚙️ 외부 명령어 (132)
references/examples.md:5-12 references/examples.md:12-16 references/examples.md:16-105 references/examples.md:105-109 references/examples.md:109-134 references/examples.md:134-138 references/examples.md:138-161 references/examples.md:161-165 references/examples.md:165-176 references/examples.md:31 SKILL.md:8 SKILL.md:8 SKILL.md:8 SKILL.md:12 SKILL.md:15 SKILL.md:16 SKILL.md:17 SKILL.md:19 SKILL.md:25 SKILL.md:26 SKILL.md:30 SKILL.md:32 SKILL.md:33 SKILL.md:33 SKILL.md:33 SKILL.md:39 SKILL.md:40 SKILL.md:41 SKILL.md:42 SKILL.md:43 SKILL.md:43 SKILL.md:44 SKILL.md:44 SKILL.md:45 SKILL.md:45 SKILL.md:46 SKILL.md:47 SKILL.md:48 SKILL.md:49 SKILL.md:50 SKILL.md:51 SKILL.md:52 SKILL.md:56-61 SKILL.md:61-67 SKILL.md:67 SKILL.md:67-71 SKILL.md:71 SKILL.md:71 SKILL.md:71-72 SKILL.md:72 SKILL.md:72-73 SKILL.md:73-74 SKILL.md:74-75 SKILL.md:75-76 SKILL.md:76-77 SKILL.md:77 SKILL.md:77 SKILL.md:77-78 SKILL.md:78 SKILL.md:78-79 SKILL.md:79 SKILL.md:79-80 SKILL.md:80 SKILL.md:80 SKILL.md:80 SKILL.md:80 SKILL.md:80-81 SKILL.md:81-82 SKILL.md:82-83 SKILL.md:83-84 SKILL.md:84-85 SKILL.md:85-86 SKILL.md:86-87 SKILL.md:87 SKILL.md:87-88 SKILL.md:88-89 SKILL.md:89-90 SKILL.md:90-91 SKILL.md:91-92 SKILL.md:92-93 SKILL.md:93-101 SKILL.md:101-103 SKILL.md:103-106 SKILL.md:106-111 SKILL.md:111-115 SKILL.md:115-117 SKILL.md:117-120 SKILL.md:120-125 SKILL.md:125-129 SKILL.md:129-136 SKILL.md:136-141 SKILL.md:141-145 SKILL.md:145-153 SKILL.md:153-154 SKILL.md:154-155 SKILL.md:155-156 SKILL.md:156-157 SKILL.md:157-163 SKILL.md:163-165 SKILL.md:165-181 SKILL.md:181-185 SKILL.md:185-193 SKILL.md:193-197 SKILL.md:197-199 SKILL.md:199-208 SKILL.md:208-210 SKILL.md:210-214 SKILL.md:214-216 SKILL.md:216-222 SKILL.md:222-227 SKILL.md:227-229 SKILL.md:229-237 SKILL.md:237 SKILL.md:237-238 SKILL.md:238-240 SKILL.md:240-245 SKILL.md:245-252 SKILL.md:252-254 SKILL.md:254-259 SKILL.md:259 SKILL.md:259-260 SKILL.md:260 SKILL.md:260 SKILL.md:260 SKILL.md:260-265 SKILL.md:265-267 SKILL.md:267-268 SKILL.md:268 SKILL.md:268-269 SKILL.md:269 SKILL.md:269-273 SKILL.md:273-274
🌐 네트워크 접근 (13)
감사자: claude 감사 이력 보기 →

품질 점수

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

만들 수 있는 것

RouterOS용 컨테이너 애플리케이션 정의

네트워크 관리자가 /app 서브시스템을 사용하여 MikroTik 라우터에 Grafana와 Prometheus가 포함된 모니터링 스택을 배포하기 위한 YAML을 작성합니다.

docker-compose 프로젝트를 RouterOS로 마이그레이션

개발자가 기존 docker-compose 구성을 RouterOS /app YAML 형식으로 변환하고 포트 구문을 조정하며 지원되지 않는 속성을 제거합니다.

팀 배포를 위한 앱 스토어 생성

시스템 엔지니어가 여러 RouterOS 장치에서 일관된 배포를 위해 사전 구성된 애플리케이션이 포함된 tikappstore YAML 파일을 빌드합니다.

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

기본 /app 정의 생성
지속적 데이터를 위한 명명된 볼륨과 함께 포트 8080에서 nginx 컨테이너를 실행하는 RouterOS /app YAML 파일을 작성하세요.
docker-compose를 RouterOS YAML로 변환
이 docker-compose 파일을 RouterOS /app YAML 형식으로 변환하세요. 지원되지 않거나 다르게 동작하는 속성을 강조해 주세요.
멀티서비스 애플리케이션 생성
웹 프론트엔드, PostgreSQL 데이터베이스, Redis 캐시를 포함한 RouterOS /app YAML을 작성하세요. 적절한 볼륨 마운트, 네트워크 격리, 헬스 체크를 포함해야 합니다.
앱 스토어 파일 빌드
웹 서버, 데이터베이스 관리자, 모니터링 대시보드라는 세 개의 애플리케이션이 포함된 RouterOS 앱 스토어 YAML 파일을 생성하세요. 각 애플리케이션에 적절한 카테고리 및 메타데이터를 포함해야 합니다.

모범 사례

  • 일반 YAML 파일과 구분하기 위해 custom RouterOS 앱 정의에는 항상 .tikapp.yaml 파일 확장자를 사용하세요.
  • 개발 중에는 더 나은 자동 완성을 위해 *.editor.json 스키마 변형을 사용하고, 배포 전에는 *.latest.json에 대해 검증하세요.
  • 스키마 오류를 조기에 발견하기 위해 프로덕션 하드웨어에 배포하기 전에 RouterOS CHR 가상 머신에서 YAML을 테스트하세요.

피하기

  • docker-compose 전체 호환성을 가정하는 것. RouterOS /app은 compose 속성의 일부만 지원하며 일부는 다르게 동작합니다.
  • version 최상위 키를 사용하는 것. RouterOS는 이 키를 무시하며 /app YAML에서 아무런 역할을 하지 않습니다.
  • 단일 포트 문자열 내에서 포트 형식 스타일을 혼합하는 것. 각 포트 항목은 이전 OCI 스타일 또는 새 콜론 스타일 중 하나만 exclusively 사용해야 합니다.

자주 묻는 질문

/app YAML을 사용하려면 어떤 RouterOS 버전이 필요한가요?
/app 경로는 RouterOS 7.21부터 내장되었습니다. /app/add를 통한 custom 앱 생성에는 RouterOS 7.22 이상이 필요합니다. container 추가 패키지도 설치되어 있어야 합니다.
RouterOS /app YAML이 docker-compose와 동일한가요?
아니요. RouterOS /app YAML은 docker-compose와 비슷해 보이지만 더 적은 속성을 지원합니다. deploy 및 resources와 같은 일부 속성은 지원되지 않습니다. 포트 매핑 구문도 두 형식 간에 차이가 있습니다.
/app YAML 파일에 어떤 파일 확장자를 사용해야 하나요?
개별 앱 정의에는 .tikapp.yaml을, 앱 스토어 파일에는 .tikappstore.yaml을 사용하세요. 이러한 규칙을 통해 도구와 편집기가 올바른 스키마를 적용할 수 있습니다.
RouterOS YAML에서 플레이스홀더는 어떻게 작동하나요?
[accessIP], [accessPort], [containerIP], [routerIP]와 같은 플레이스홀더는 배포 시 RouterOS에 의해 확장됩니다. 이들은 포트 매핑, 환경 값, 구성 내용에 나타납니다.
소문자 환경 변수 이름을 사용할 수 있나요?
strict 검증 스키마는 [A-Z_][A-Z0-9_]* 패턴과 일치하는 대문자 환경 변수 이름을 요구합니다. 혼합 케이스 변수 이름이 필요하면 editor 스키마 변형을 사용하세요.
RouterOS에 custom 앱을 어떻게 추가하나요?
YAML 파일 URL을 가리키는 yaml-url 매개변수와 함께 /app/add CLI 명령을 사용하세요. 또는 요청 본문에 yaml-url를 포함한 /app의 REST API PUT 엔드포인트를 사용하세요.

개발자 세부 정보

작성자

tikoci

라이선스

MIT

참조

main

파일 구조