무료 오픈소스 API 목킹 CLI 도구

API 목업을 위한 무료 오픈소스 CLI 도구 6가지(라이선스 및 자체 호스팅 기반 순위): Prism, Mockoon CLI, json-server, WireMock, MockServer, Microcks.

INEZA Felin-Michel

INEZA Felin-Michel

10 July 2026

무료 오픈소스 API 목킹 CLI 도구

Apidog 엔터프라이즈

온프레미스 배포

SSO & RBAC

SOC 2 준수

Apidog Enterprise 살펴보기

명령줄에서 API를 모의(mock)할 때, 라이선스는 기능 목록만큼 중요합니다. 소스를 읽고, 직접 호스팅하며, 좌석 수 제한 없이 CI에서 실행할 수 있는 모의 서버는 로그인 뒤에 숨겨진 호스팅형 SaaS 모의 서버와는 매우 다릅니다. 이 가이드는 오픈 소스 측면, 즉 복제하고, 검사하며, 무료로 실행할 수 있는 도구들을 다룹니다.

여기 있는 모든 도구는 허용적인 라이선스(MIT 또는 Apache-2.0) 하에 소스가 공개되어 있으며, 공개 GitHub 저장소에 있고, 계정 없이 자체 호스팅할 수 있습니다. 이것이 필터입니다. 시작 속도와 설치 크기에 따라 순위가 매겨진 더 작고 단일 바이너리 선택 사항을 원한다면, 대신 보조 자료인 경량 모의 서버 선택 사항을 읽으십시오. 이 목록은 소스와 자체 호스팅에 관한 것이므로, 더 무거운 자체 호스팅 가능한 플랫폼도 자리를 차지할 수 있습니다.

각 도구에 대해 라이선스, 작동함을 증명하는 단일 설치-실행 명령, 가장 잘하는 것, 그리고 단점을 설명합니다. 상업적 옵션을 포함한 더 넓은 분야를 원한다면 최고의 API 모의 도구 종합REST API 모의 도구 개요를 참조하십시오.

목록을 시작하기 전에 솔직한 참고 사항입니다. Apidog는 오픈 소스가 아닙니다. 이는 프리미엄 상용 플랫폼입니다. 이 도구들에 대한 통합된 대안으로서 마지막에 한 번 등장하며, 오픈 소스 항목이 아닌 것으로 명확하게 표시됩니다. 아래의 번호 매겨진 섹션에 있는 모든 것은 진정으로 오픈 소스입니다.

다운로드

CLI 모의 도구를 오픈 소스로 만드는 것

세 가지가 도구가 이 목록에 속하는지 여부를 결정합니다.

라이선스. 소스는 허용적인 라이선스 하에 공개되어야 합니다. 여기 있는 모든 선택 사항은 MIT 또는 Apache-2.0이므로, 라이선스 비용이나 좌석 수 제한 없이 소스를 읽고, 포크(fork)하고, 자신의 제품 내에 배포할 수 있습니다.

자체 호스팅 가능. 노트북, 컨테이너 또는 자체 서버에서 실행합니다. 호스팅된 제어 평면, 전화 연결, 계정 게이트가 없습니다. 이것이 에어갭(air-gapped) CI 러너에서 모의를 사용할 수 있게 유지하는 이유입니다.

공개적으로 유지보수됨. 실제 커밋 히스토리, 이슈, 릴리스가 있는 공개 GitHub 저장소. 별(Stars)은 대략적인 신호이고, 최근 커밋과 태그가 지정된 릴리스가 더 나은 신호입니다.

목록에 없는 것에 주목하십시오: 원시 속도 또는 설치 크기. 이는 경량 측면입니다. 여기서는 소스가 공개되어 있고 라이선스가 무료인 한, 크고 컨테이너 기반이며 자체 호스팅 가능한 플랫폼도 공정한 게임입니다.

Prism (Stoplight)

Prism은 OpenAPI 또는 Postman 파일을 라이브 모의 서버로 전환합니다. 사양을 가리키면 예제 응답을 제공하고, 스키마에 대해 들어오는 요청을 검증하며, 실제 API 앞에 유효성 검사 프록시로 실행될 수 있습니다. 라이선스: Apache-2.0. 저장소: stoplightio/prism.

npm install -g @stoplight/prism-cli
prism mock https://raw.githubusercontent.com/stoplightio/prism/master/examples/petstore.oas2.yaml

이 명령은 사양에 의해 전적으로 구동되는 http://127.0.0.1:4010에서 모의를 부팅합니다. GET /pets는 OpenAPI 문서의 예제를 반환합니다. 잘못된 페이로드를 보내면 Prism이 스키마의 어떤 부분을 위반했는지 알려줍니다.

가장 잘하는 것: OpenAPI 파일이 진실의 원천인 사양 기반 계약 모의. 유효성 검사 프록시 모드가 뛰어납니다. 사양과 실제 API 간의 차이를 포착합니다.

한계: 응답은 예제와 스키마에서 오므로, 모의는 사양만큼만 풍부합니다. 내장된 상태 유지 동작(생성 후 다시 읽기 없음)이 없습니다. Node 도구이므로 Node 런타임이 필요합니다.

Mockoon CLI

Mockoon은 데스크톱 앱으로 가장 잘 알려져 있지만, CLI는 CI 및 자체 호스팅을 위해 구축된, GUI 없는 동일한 엔진을 제공합니다. 환경을 설계하거나(앱에서 또는 수동으로) OpenAPI 파일을 제공하면 해당 모의를 제공합니다. 라이선스: MIT. 저장소: mockoon/mockoon.

npm install -g @mockoon/cli
mockoon-cli start --data ./environment.json --port 3000

--data ./openapi.yaml을 사용하여 OpenAPI 파일에서 직접 시작할 수도 있습니다. 파일 변경 시 다시 로드하려면 --watch를 추가하고, 전체 요청/응답 로그를 출력하려면 --log-transaction을 추가하십시오.

가장 잘하는 것: 코드 작성 없이 풍부하고 규칙 기반 응답. Mockoon은 응답 템플릿, 조건부 규칙 및 프록시 모드를 지원하므로, 하나의 엔드포인트가 요청에 따라 다른 본문을 반환할 수 있습니다. 앱에서 시각적으로 디자인하고 CLI를 통해 헤드리스로 실행하는 것은 깔끔하게 분리됩니다.

한계: 가장 좋은 작성 경로는 데스크톱 앱이므로, 환경 JSON을 수동으로 편집하는 것은 까다롭습니다. 동적 템플릿 구문은 자체적인 학습 곡선이 있습니다.

json-server

json-server는 REST API를 가장 빠르게 가짜로 만드는 방법입니다. JSON 파일을 제공하면 해당 파일에 대한 실제 영속성(persistence)을 가진 전체 CRUD 경로(GET, POST, PUT, PATCH, DELETE)를 생성합니다. 라이선스: MIT. 저장소: typicode/json-server.

npx json-server db.json

최상위 "posts" 배열이 있는 db.json이 있으면 즉시 GET /posts, GET /posts/1, POST /posts 및 나머지, 그리고 쿼리 매개변수를 통한 필터링, 정렬 및 페이지 매김을 얻을 수 있습니다. 새 레코드를 POST하면 파일에 기록되고, 다시 읽으면 거기에 있습니다.

가장 잘하는 것: 백엔드가 존재하기 전에 프런트엔드 개발. 이는 즉시 상태를 유지하며, Prism과 대부분의 사양 기반 모의는 그렇지 않습니다. 제로 구성이며, npx는 설치할 필요조차 없음을 의미합니다.

한계: REST 형태에 대해 확고한 의견을 가지고 있으므로, 임의의 사용자 지정 API와 일치하지 않을 것입니다. OpenAPI 가져오기 기능이 없습니다. JSON 파일이 계약입니다. 부하 테스트 또는 프로덕션과 유사한 동작에는 적합하지 않습니다.

WireMock

WireMock은 오픈 소스 HTTP 모의의 거물로, 매월 수백만 건의 다운로드를 기록합니다. JSON 관리 API 또는 JSON 스텁 파일을 통해 구성된 독립 실행형 프로세스로 실행되며, 요청 매칭, 응답 템플릿, 상태 유지 시나리오, 오류 주입, 기록 및 재생을 처리합니다. 라이선스: Apache-2.0. 저장소: wiremock/wiremock.

docker run -it --rm -p 8080:8080 wiremock/wiremock:latest
curl -X POST http://localhost:8080/__admin/mappings \
  -H 'Content-Type: application/json' \
  -d '{"request":{"method":"GET","url":"/hello"},"response":{"status":200,"body":"world"}}'

첫 번째 줄은 WireMock을 시작합니다. 두 번째 줄은 관리 API를 통해 스텁을 등록합니다. 이제 curl http://localhost:8080/helloworld를 반환합니다. mappings/ 디렉토리에 스텁 파일을 넣고 컨테이너에 마운트할 수도 있습니다.

가장 잘하는 것: 복잡한 테스트 시나리오. 상태 유지 동작, 불안정한 제3자를 시뮬레이션하기 위한 지연 및 오류, 실제 API를 캡처하고 나중에 재생하기 위한 프록시-플러스-기록. 이것은 모의가 테스트 대상의 실제와 같이 작동해야 할 때의 도구입니다.

한계: JVM 도구이므로, 컨테이너 또는 Java 런타임이 진입 비용입니다. 구성 표면이 넓어 간단한 모의는 과도하게 느껴질 수 있습니다. Prism처럼 "사양을 읽고 실행"하는 단일 명령이 없습니다.

MockServer

MockServer는 단일 포트에서 작동하는 HTTP(S) 모의 및 프록시로, 통합 테스트에 중점을 둡니다. API를 모의하고, 라이브 트래픽을 프록시 및 기록하며, 클라이언트가 오류를 어떻게 처리하는지 테스트하기 위해 오류를 주입할 수 있습니다. 최근 버전에는 HTTP/2, gRPC 및 WebSocket 지원이 추가되었습니다. 라이선스: Apache-2.0. 저장소: mock-server/mockserver.

docker run -d --rm -p 1080:1080 mockserver/mockserver
curl -X PUT 'http://localhost:1080/mockserver/expectation' \
  -H 'Content-Type: application/json' \
  -d '{"httpRequest":{"path":"/order"},"httpResponse":{"body":"{\"status\":\"ok\"}"}}'

PUT은 "기대치(expectation)"를 등록합니다. 그 후, curl http://localhost:1080/order는 JSON을 반환합니다. MockServer의 클라이언트(Java, JavaScript, Ruby 등)는 curl을 사용하는 대신 테스트 코드 내에서 동일한 기대치를 설정할 수 있게 합니다.

가장 잘하는 것: 동일한 장소에서 모의 및 프록시, 그리고 오류 주입. 특정 요청이 특정 횟수만큼 이루어졌는지 확인해야 한다면 MockServer의 검증 API가 이를 위해 구축되었습니다. JVM 중심 스택에 적합합니다. 적절한 형태가 아니라면 MockServer 대안 문서를 참조하십시오.

한계: WireMock과 마찬가지로 JVM 기반이며 기대치 JSON이 장황합니다. WireMock과의 중복은 실제입니다. 테스트 스택에 맞는 클라이언트 라이브러리를 기반으로 하나를 선택하십시오.

Microcks

Microcks는 플랫폼 선택이며, Cloud Native Computing Foundation(CNCF) 인큐베이팅 프로젝트입니다. OpenAPI, AsyncAPI, gRPC, GraphQL, Postman 컬렉션 및 SoapUI 프로젝트를 라이브 모의로 전환하며, 동일한 계약을 재사용하여 실제 구현에 대해 적합성 테스트를 실행합니다. HTTP뿐만 아니라 이벤트 기반 및 비동기 프로토콜도 다룹니다. 라이선스: Apache-2.0. 저장소: microcks/microcks.

docker run -d --name microcks -p 8585:8080 quay.io/microcks/microcks-uber:latest

이는 올인원 이미지를 실행합니다. http://localhost:8585를 열고 사양을 가져와 모의 엔드포인트를 얻으십시오. 보조 도구인 microcks-cli는 CI에서 실행 중인 서버를 구동합니다.

microcks-cli import 'petstore.yaml:true' \
  --microcksURL=http://localhost:8585/api \
  --keycloakClientId=... --keycloakClientSecret=...

가장 잘하는 것: 계약 테스트가 내장된, 여러 API 및 프로토콜에 걸쳐 관리되는 모의 카탈로그를 원하는 팀. 비동기/이벤트 기반 모의(Kafka, MQTT 및 유사 도구)는 이 분야에서 드뭅니다.

한계: 이것은 단일 바이너리가 아닌 서버입니다. 한 가지 중요한 주의사항: microcks-cli는 실행 중인 Microcks 인스턴스에 대해 테스트를 트리거하고 아티팩트를 가져옵니다. 자체적으로 모의를 제공하지는 않습니다. 따라서 CLI는 클라이언트이며 여전히 플랫폼을 실행해야 합니다. 일회성 로컬 모의의 경우 Prism 또는 json-server보다 무겁습니다.

솔직한 여담: Apidog

Apidog는 오픈 소스가 아니므로, 여기에 번호 매겨진 항목으로 포함되지 않습니다. 하지만 위에 언급된 도구들이 서로 다른 부분(사양 기반 모의, 상태 유지 CRUD, 계약 테스트)을 해결하며, 이를 직접 연결하고 싶지 않다면 언급할 가치가 있습니다. Apidog는 모의 기능을 포함하는 무료 등급을 제공하는 프리미엄 플랫폼이며, apidog-cliapidog mock를 사용하면 디자인, 테스트 및 문서와 함께 터미널에서 모의 기대치를 하나의 프로젝트에서 관리할 수 있습니다. 스마트 모의 기능은 스키마에서 현실적인 필드 값을 자동으로 생성하므로, 예제 본문을 수동으로 작성할 필요가 없습니다.

명확한 장단점이 있습니다. 오픈 소스와 자체 호스팅 대신 통합된 워크플로와 무료 등급을 얻을 수 있습니다. 오픈 소스 또는 에어갭(air-gapped) 자체 호스팅이 필수 요구 사항이라면 위 6가지 도구 중 하나가 답입니다. 통합된 디자인-모의 루프가 더 중요하다면 Apidog가 여러 도구를 연결하는 대안이 됩니다.

선택 방법

도구 가장 적합한 용도 설치 라이선스 참고
Prism 사양 기반 모의 + 유효성 검사 프록시 npm i -g @stoplight/prism-cli Apache-2.0 OpenAPI/Postman 입력, 모의 출력; 무상태
Mockoon CLI 코드 없는 규칙 기반 응답 npm i -g @mockoon/cli MIT 앱에서 디자인, 헤드리스 실행
json-server 프런트엔드를 위한 상태 유지 가짜 REST npx json-server db.json MIT 영속성을 가진 전체 CRUD, 제로 구성
WireMock 복잡한 테스트 시나리오, 오류 docker run wiremock/wiremock Apache-2.0 JVM; 기록 및 재생; 상태 유지
MockServer 모의 + 프록시 + 검증 docker run mockserver/mockserver Apache-2.0 JVM; HTTP/2, gRPC, WebSocket
Microcks 관리되는 다중 API/프로토콜 카탈로그 docker run microcks-uber Apache-2.0 CNCF 플랫폼; CLI는 클라이언트, 서버 아님
Apidog (OSS 아님) 통합된 디자인-모의 npm i -g apidog-cli 프리미엄 무료 등급; 하나의 프로젝트에서 apidog mock

인기보다는 형태에 따라 선택하십시오. OpenAPI 파일을 읽고 강제하는 모의를 원한다면 Prism으로 시작하십시오. 백엔드가 출시되기 전 상태 유지 CRUD를 위해서는 json-server가 속도 면에서 우수합니다. 오류와 기록 및 재생이 포함된 풍부한 테스트 시나리오를 위해서는 WireMock 또는 MockServer; 클라이언트 라이브러리에 따라 선택하십시오. 계약 테스트와 함께 공유되고 다중 프로토콜 카탈로그를 위해서는 Microcks. 어떤 상황에 어떤 형태가 맞는지에 대해서는 API 모의 사용 사례 가이드가 도구를 시나리오에 매핑합니다.

마무리

오픈 소스 CLI 모의 도구는 소스를 읽고, 자체 호스팅하며, CI에서 무료로 실행할 수 있는 모의 서버를 제공합니다. Prism과 json-server는 한 가지 명령으로 일반적인 경우를 처리하며, WireMock과 MockServer는 어려운 테스트 시나리오를 다루고, Microcks는 프로토콜 전반에 걸쳐 관리되는 카탈로그로 확장합니다. 6가지 모두 MIT 또는 Apache-2.0 라이선스이며, 모두 자체 호스팅 가능하고, 모두 공개 GitHub에 있습니다.

별도의 도구들을 연결하지 않고 API 디자인, 테스트 및 문서와 함께 모의를 관리하고 싶다면 Apidog를 다운로드하여 무료 등급에서 apidog mock를 사용해 보십시오. 오픈 소스는 아니지만, 명령줄에서 CI까지 전체 루프를 실행할 수 있는 한 곳입니다.

Apidog에서 API 설계-첫 번째 연습

API를 더 쉽게 구축하고 사용하는 방법을 발견하세요