For my Ephemeral Exchange project I needed to integrate a whole bunch of technologies for the front end development, but it also gave me some new challenges with other stuff that was new to me too. I had started with the intention of hosting Redis, my back end database on a Compute engine VM, the API as Node/express app on another VM and my front end stuff on Cloud storage. As usual, plans changed.
If you think about a VM as being an environment that’s hosted by a host OS, but that has a virtual encapsulated OS – essentially a machine running on another – you still have to manage that as if it were a real machine. Docker is an application focused version of a VM, where you package your app and everything it needs (including an operating system to support it) into a container, then anything that can run Docker can run your App. The Docker Hub is a repository of containers that others have made and you can base your container on one of them – or you can start from scratch and build your own. In these pages I’ll be going into Docker containers and showing some examples.