Hacker News new | ask | show | jobs
by garganzol 3250 days ago
I find it funny to see containers landing in Windows. While I fully approve the containers on Linux, to me it looks like Windows does not really need them: it already has a stable notion of executable files with full binary compatibility. An old but gold EXE format is your container. Please excuse my probable naivety, but am I missing something?
5 comments

Containers are not just about providing stable executable files, but consistent and reproducible environments. Besides, having a unified way of deploying both linux, windows or any other OS seems like a win-win since your backend (docker, or whatever container runtime you use) would remain the same.
Your old but gold EXE still has access to system registry and files. It also commonly requires a lot of DLLs and configuration files next to it.

A container has all the dependencies contained and has a private set of files and registry.

So no installation and no-side effects.

Containers allow different EXEs to leverage different versions of the same DLL, much as the WinSxS folder does. It solves some problems that Windows previously solved, in new ways.

Also it prevents "server bloat", where a web or AD-LDAP server gets incidental utility roles attached, like running scripts or being a bastion/jump-box. You can't really RDP to the container, so you can't update DNS from there.

Containerization arose out of Linux namespaces. What you get is process segregation under the same kernel, like jails or chroots but more granual. So security, that's the answer.
Security and upgrade paths play a massive role.