OpenAPI 3
Zum Rendern einer OpenAPI 3-Spezifikation in eine eigenständige HTML-Datei kann redoc-cli verwendet werden. Sie können die PetAPore OpenAPI 3-Spezifikation von ReDoc als Beispiel verwenden.
mkdir -p -m 777 build && docker run --rm --user 1000 \
-v $PWD/build:/tmp/build -w /tmp/build \
-v $PWD/openapi.yaml:/tmp/openapi.yaml node:14-slim npx -q \
redoc-cli bundle /tmp/openapi.yaml
Dies wird build/redoc-static.html
in Ihrem aktuellen Verzeichnis generiert .
Um zu vermeiden, dass Sie auf die Installation warten, können Sie sich auch ein Docker-Image redoc-cli
entsprechend erstellen Dockerfile
oder redoc-cli
auf Ihrem Betriebssystem installieren , wenn Sie NodeJS dort haben npm install -g redoc-cli
.
OpenAPI 2
ReDoc hat auch einen Kompatibilitätsmodus für OpenAPI 2 / Swagger, daher funktioniert das oben Genannte auch für Gesagte Petstore OpenAPI 2-Spezifikation funktioniert .
[ReDoc Compatibility mode]: Converting OpenAPI 2.0 to OpenAPI 3.0
Alternativ gibt es das OpenAPI 2-only Spectacle und sein offizielles Docker-Image . Es kann ähnlich verwendet werden wie:
mkdir -p -m 777 build && docker run --rm --user 1000 \
-v $PWD/build:/tmp/build \
-v $PWD/swagger.yaml:/tmp/swagger.yaml sourcey/spectacle \
spectacle -t /tmp/build /tmp/swagger.yaml
Es generiert einen statischen Build, der fast in sich geschlossen ist (außer das Laden von jQuery, von code.jquery.com
dem aus irgendeinem Grund mein Ende aus langsam war).
├── index.html
├── javascripts
│ ├── spectacle.js
│ └── spectacle.min.js
└── stylesheets
├── foundation.css
├── foundation.min.css
├── spectacle.css
└── spectacle.min.css