@Sylvhem (disclaimer: I used to work there)
what other folks said, perhaps restated: lots of services/programs imagine that they're the only thing a machine will be running. it's really nice to be able to provide them something that looks like that (your own filesystem, etc), in a reproducible way (hopefully). you can do that without docker specifically, but the presence of a big repository of existing configurations from which to start makes docker attractive for some people.
it's definitely not a magic fix for all problems, and I prefer other approaches for the future :)
#unikernels Afficher plus
@Sylvhem I worked a lot on a project called MirageOS, which instead wants to pull in only the bits of an operating system that you say an application needs, then run the resulting thing directly on a hypervisor (instead of sharing a kernel as containers/jails/&c do).
In that world everything is a library and you compile everything into one artifact before deploying, so a lot of pain from package managers, dependencies, etc goes away from the deployment side (although still exists on the development/building side, unfortunately).
I want a future more like that, where I only get a filesystem if I need it, & can use a nicer API to talk with it :)