In going through GitHub source code it does look Docker is mandated. Now how much of a learning is curve is that, and is there cheat sheet to that effect in the appendix section? For a typical work laptop how much of a drag it is to install and run this locally (in addition of the bunch of other mandatory running services, not to mention the bunch of libraries that we'd need to keep going - Eureka, Zuul, and so on)?
Alternately, are the exercises meant to be practiced and run exclusively in a dev or remote box?
Thank you for the kind words. You can build and run the services without Docker. However, you have to manually start each service and also make sure you have a Postgres database running. That being said, I tried to build all of the chapters so you could start all of the services without having to do all of the I just described. Thats why I used Docker and Docker Compose so that all of the services could be started locally. You can run these exercises on a Dev box. All of the instructions you need to build and run the code material in the Chapter can be found in the Appendix and the READMEs in each individual Chapter.
If you are space constrained on your work laptop, I would recommend you get a Amazon AWS account. When I was writing the book, I used the 1 year free tier to pretty much run all of the infrastructure. I know that adds even more complexity if you are beginning. An alternative is to run some of the services like Postegres, Kafka and Redis on a Dev server and then run and test your services locally. Frankly, that is one of the downsides of a microservice architecture is that if you do want to run the app locally you end up running dozens of containers. What we do in my company is we make heavy use of unit and integration tests with mocks to build and test services locally. As long as you know what your remote service calls are going to return, its usually pretty easy to mock out services using mock-server.
I hope I answered your question.
John Carnell - Senior Engineer, Genesys PureCloud Division
Author of Spring Microservices in Action
posted 3 years ago
Thank you John, for the clarification and detailed response .
For me, this translates into leveraging PCF (which is where we, as an org, are headed for now).