facebook twitter hatena line email

「仮想サーバ/docker/MockApiサーバ」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(Swaggerapiでサーバー作成)
行3: 行3:
  
 
dockerhubのmmock:https://hub.docker.com/r/jordimartin/mmock
 
dockerhubのmmock:https://hub.docker.com/r/jordimartin/mmock
 +
 +
docker-compose.yml
 +
<pre>
 +
version: '3'
 +
services:
 +
  mmock:
 +
    image: jordimartin/mmock:v3.0.0
 +
    restart: 'always'
 +
    volumes:
 +
      - ./mmock:/config
 +
    ports:
 +
      - '8082:8082'
 +
      - '8083:8083'
 +
</pre>
 +
mmock/200_get.yml
 +
<pre>
 +
request:
 +
  method: GET
 +
  path: "/hello/*"
 +
response:
 +
  statusCode: 200
 +
  headers:
 +
    Content-Type:
 +
    - application/json
 +
  body: '{"hello": "{{request.query.name}}, my name is {{fake.FirstName}}"}'
 +
</pre>
 +
 +
APIリスト管理画面
 +
ttp://0.0.0.0:8082
 +
 +
httpアクセス
 +
ttp://0.0.0.0:8083/hello?name=helloworld
  
 
参考:https://qiita.com/Ryo478468/items/4a959c5d7312045f471c
 
参考:https://qiita.com/Ryo478468/items/4a959c5d7312045f471c
行14: 行46:
 
以下でswagger-uiのapi設定のAPIリストが出る
 
以下でswagger-uiのapi設定のAPIリストが出る
  
ttp://localhost:8090
+
httpアクセス ttp://localhost:8090
  
 
サンプルでxmlを表示したい場合
 
サンプルでxmlを表示したい場合

2021年1月29日 (金) 16:41時点における版

mmockでサーバを作成

go言語で作られたmockAPIサーバー jordimartin/mmockを使う。

dockerhubのmmock:https://hub.docker.com/r/jordimartin/mmock

docker-compose.yml

version: '3'
services:
  mmock:
    image: jordimartin/mmock:v3.0.0
    restart: 'always'
    volumes:
      - ./mmock:/config
    ports:
      - '8082:8082'
      - '8083:8083'

mmock/200_get.yml

request:
  method: GET
  path: "/hello/*"
response:
  statusCode: 200
  headers:
    Content-Type:
    - application/json
  body: '{"hello": "{{request.query.name}}, my name is {{fake.FirstName}}"}'

APIリスト管理画面 ttp://0.0.0.0:8082

httpアクセス ttp://0.0.0.0:8083/hello?name=helloworld

参考:https://qiita.com/Ryo478468/items/4a959c5d7312045f471c

Swaggerapiでサーバー作成

docker pull swaggerapi/swagger-ui
docker run -d -p 8090:8080 swaggerapi/swagger-ui

以下でswagger-uiのapi設定のAPIリストが出る

httpアクセス ttp://localhost:8090

サンプルでxmlを表示したい場合

  1. /pet/findByStatusを開いて、try it outを選択
  2. availableを選択

requestに https://petstore.swagger.io/v2/pet/findByStatus?status=available とでるので、表示するとxmlが出る。

参考:https://qiita.com/aucfan-engineer/items/5532fcf69b4f4dcd1c41