Right now we handle dependencies for services in a very weird way that depends on various shell scripts and assumes a Docker environment built atop the base-image.
This diff uses the CMake FetchContent_Declare functionality to pull in the correct version of glog (as described in services/base-image/docker/install_glog.sh) without depending on a shell script/base image.
In my opinion it makes way more sense for each service to handle required dependencies rather than assuming there's some "base image" that magically takes care of things.
The coupling of services builds with assumption of Docker environment leads to CMake projects that aren't portable... making it impossible to get things to work directly on dev machines. IMO the right level of abstraction for handling dependencies is the build system (in this case CMake).