Jim Schubert 51e7005373
[online] Remove GENERATOR_HOST defaults (#3289)
The defaults configured for GENERATOR_HOST didn't really make sense.
When running the docker container with `-P`, GENERATOR_HOST defaulted to
http://localhost. This caused download links for generated client/server
code to be incorrect. For most cases, there's no reason to provide
GENERATOR_HOST as the code already figures the appropriate
scheme/host/port from the originating request.

GENERATOR_HOST could still be used for more complex deployment
scenarios, for instance if a specific server is configured as a file
server. I haven't tested this scenario, and it may require mounting /tmp
as a volume when running within a container.
2019-07-07 10:25:43 -04:00

57 lines
1.9 KiB
Markdown

# 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.