我們有一個完全dockerized的web應用程序,其API有效的Swagger定義。 API運行在它自己的docker容器中,我們使用docker-compose編排一切。我想根據位於http://api:8443/apidocs.json
的Swagger定義生成一個Ruby客戶端。如何使用公開招搖的生成器碼頭圖像來生成客戶端?
我已經翻閱了文檔here,這導致我產生了客戶端和服務器代碼的Swagger's public docker image。令人遺憾的是文檔缺乏,並沒有提供實際生成具有泊塢窗圖像的客戶端的示例。
Dockerfile表示它的容器運行一個Web服務,我只能假設它是dockerized版本的http://generator.swagger.io。因此,我希望能夠生成客戶端使用下面的命令:
curl -X POST -H "content-type:application/json" -d \ '{"swaggerUrl":"http://api:8443/apidocs"}' \ http://swagger-generator:8080/api/gen/clients/ruby
沒有運氣在這裏。即使我已經確認swagger的定義與(npm -q install -g swagger-tools >/dev/null) && swagger-tools validate http://api:8443/apidocs
一致,我仍然收到「無效的swagger定義」。
任何想法?
感謝您澄清並提供有用的信息!在挖掘了swagger-generator容器的日誌後,我看到提出的錯誤是「連接被拒絕」。然而,根據curl請求輸出的錯誤是「無效的swagger定義」。沒那麼有用的輸出,那。 :(我糾正了swaggerUrl選項後,「http:// api/apidocs.json」 –
mycargus