What is it
Containers is a standardized way of packaging and running software.
When to use it
Package and run your software using containers unless there are specific reasons otherwise.
Using containers lets us build up a baseline of portability in our tech stack, giving us the option of porting it between different runtimes (such as Cloud Run and GKE) with relative ease, and also ensures that we have a standardized interface for migrating workloads between cloud providers, if and when that should become necessary.
How to learn it
Current best practices
To learn our current best practices for packaging and running backend software as containers, do the backend onboarding guide.
Future best practices
Be on the lookout for emerging ways of packaging software into containers (such as ko and/or Buildpacks) and emerging container runtimes that we can evaluate to simplify and improve our software development lifecycle.