NodeJS (front-end server) http://:3000
spring-boot (data server) http://:8080
to get this working on EC2, nginx was added to help act as a HTTPS terminator and router for the NodeJS instance.
domain routing --> name.com
this is not a permanent solution, just a demo, so I used and A record at name.com to point to my Elastic IP address. the trick here is to add 2 A records; [blank].example.com --> [elastic IP] and *.example.com --> [elastic IP]. this needs to be done to support https://letsencrypt.org
so, in playing around with Spring Boot on Eclipse Che, here's a couple points;
when using the spring-boot-maven-plugin, you can run mvn spring-boot:run from the browser IDE
to view the application, use the link given from the docker app, but remove the app-name (so http://[your-ip]:[port-mapped-to-spring-boot]/[maven-name], should actually be http://[your-ip]:[port-mapped-to-spring-boot]/ )
so Eclipse Che is a really cool idea to create "cloud-based" workspaces and a browser based IDE. It uses docker as a corner stone to the development lifecycle for workspaces and, in initial playing around, is pretty cool.
Some quick notes
don't try and run it under root - create a new user, make sure they're a part of the docker group, and you're good
doesn't "look" nice in safari (there's a couple challenges with fonts and css sheets)
be patient with the workspace kick off, it pulls a docker image and that can take time - good candidate for "cacheing" on you server
when creating a Java class, create it as a full package resolution (so not "MyClass" but "io.example.MyClass" otherwise it will give you errors