Skip to content
This repository has been archived by the owner on Mar 30, 2024. It is now read-only.
/ mockchamp Public archive

MockChamp - docker container for mock HTTP API with web interface.

Notifications You must be signed in to change notification settings

sergeyhartmann/mockchamp

Repository files navigation

[RU] [EN]

💪 MockChamp - open-source инструмент для мока HTTP API. MockChamp написан на Go и распространяется как docker container.

Начало работы c MockChamp

docker run -p 8181:8181 sergeyhartmann/mockchamp

На localhost:8181 будет запущен HTTP сервер. Он принимает входящие запросы и отдает фейковый ответ, в зависимости от настроенных правил. Вы можете создать их используя специальное API или веб интерфейс.

Зарезервированные HTTP роуты:

Вы можете инициализировать MockChamp набором правил из json файлов. Для этого, при старте контейнера монтируйте свои *.json файлы (для примера см. dockerfiles/rules.json) в рабочий каталог /mockchamp docker container'a.

docker run -p 8181:8181 -v $(pwd)/dockerfiles:/mockchamp sergeyhartmann/mockchamp

Переменные окружения

docker run \
  -p 8181:8181 \
  -v $(pwd)/dockerfiles:/mockchamp \
  -e PROXY_HOST='example.com' \
  -e RESPONSE_STATUS_CODE=404 \
  -e PERSIST_MODE=true \
  sergeyhartmann/mockchamp

PROXY_HOST

Если у HTTP сервера нет подходящего правила для входящего запроса, то он будет проксирован на указанный хост. В случае если прокси хост не указан, сервер вернет HTTP Status код 200 OK.

RESPONSE_STATUS_CODE

Если у HTTP сервера нет подходящего правила для входящего запроса, то сервер вернет указанный HTTP Status код.

PERSIST_MODE

Если включен персистентный режим, то все созданные правила через API или веб интерфейс будут сохранены между рестартами docker container'a.

Разработка

  1. Склонируйте репозиторий
git clone https://github.com/sergeyhartmann/mockchamp
cd mockchamp
  1. Запустите main.go
go run cmd/mockchamp/main.go
  1. Для веб интерфейса запустите React App
cd ui
npm install
npm run start