> The idea that you need isolated environments to run/develop programs that need different versions of libraries is regressive.
Containerization's value proposition isn't really the isolation part. That's nice and all, but it's not their main selling point.
The main selling point of containers is the fact that they solve the problems of packaging, deploying applications, and configuration, and they do so in a perfectly auditable and observable way.
C’mon, compatibility with the host OS is just one of many deployment issues that need to be solved.
Deployment covers a ton of problems including resource allocation, traffic routing, discoverability, health checks, secrets management and heaps more. Containerisation just provides a unit of management.
I work in Go which has great backwards compatibility, builds static binaries, and since //go:embed you can release a single binary containing literally all resources needed to run an application.
We don’t technically need to use docker to deploy our services but we still need an orchestration platform.
Ironically given the discussion, we’ve chosen nomad over K8s, but nevertheless we needed something, and “backwards compatibility” didn’t really even register.
Containerization's value proposition isn't really the isolation part. That's nice and all, but it's not their main selling point.
The main selling point of containers is the fact that they solve the problems of packaging, deploying applications, and configuration, and they do so in a perfectly auditable and observable way.