I want to create the following distributed system: Spring back-end microservices containing the domain logic, a UAA (authentication) service, a Eureka service registry/discovery, a Spring Cloud Config service, and a Zuul API gateway.
I am wondering what is the proper way of serving an Angular front-end application. At the moment I am serving it as a standalone application calling the API gateway, but I have seen other approaches like serving Angular from a Spring Boot service registered in Eureka, or serving it from the API gateway itself*. I am leaning towards the latter, as it feels more structured, since the front-end is intended to only consume the API gateway, and nothing else.
*In fact, generating a front-end app with JHipster implements this approach: it creates a
webapp folder in the
src/main directory of the Zuul application.