# OpenAPI generated server A Spring Boot Server application which hosts a client/server generator API. ## Overview This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [OpenAPI-Spec](https://openapis.org), you can easily generate a server stub or one of 100+ client packages. This is an example of building a OpenAPI-enabled server in Java using the SpringBoot framework. The underlying library integrating OpenAPI to SpringBoot is [springfox](https://github.com/springfox/springfox) ## Building Refer to [root README](../../README.md) for build directions. ## Running ### Via command line Running is as simple as: ``` java -jar ./target/openapi-generator-online.jar ``` This exposes the API on local port 8080. Springfox supports configuration of the "host" value in the output OpenAPI document by setting the `Host` HTTP header in the request. To set this explicitly, pass the system property `springfox.documentation.swagger.v2.host` with the desired host. For example: ``` java -Dspringfox.documentation.swagger.v2.host=example.com:8888 -jar ./target/openapi-generator-online.jar ``` ### Via Docker After building from source, change to this module directory (`cd modules/openapi-generator-online`) and build the docker image: ``` docker build -t openapitools/openapi-generator-online:latest . ``` Now, run the docker image: ``` docker run -d -p 8888:8080 openapitools/openapi-generator-online ``` The `GENERATOR_HOST` variable is used here to ensure download links generated by the API refer to the proper API location. ## Environment `GENERATOR_HOST` can be set to force the scheme/host/port used for download link generation. In most cases, this environment variable is not necessary to be set and the download link will be generated to match the originating request. The variable is provided simply as a fallback.