In recent c't (sadly paywalled) there is an article about Snap and Flatpak.
This sounds very similar to Docker, lots of concepts are the same. Now my question what's the difference between Snap and Docker? Are those different use cases?
You might find Mark Shuttleworth's talk "Why we need a different container purely for apps" at Container Camp relevant to your question. He talks generally about VMs, containers and Docker at the start, continuing on to snaps and how they fit in about nine minutes in. Here's my summary:
You asked about different use cases compared to Docker. Here's one that snaps can do, but Docker cannot: desktop apps. Third parties can ship desktop apps using snaps, and users can easily install and update them. A Docker container can't (easily) interact with the user graphically on the screen, load documents from the user's home directory, or provide video conferencing via the user's webcam. Snaps can (once given permission).
You might ask how this is better than using PPAs. But in comparison to Docker, that's like asking how Docker is better than installing dependencies on a system by hand. It's better, but exactly how would probably be best answered in a separate, non-Docker-specific question.
In this case, you can use apt-get but snaps have an advantage supporting noninteractive updating. Or am I missing something?
– Roman Gaufman May 03 '18 at 16:21snap
is far more important for the Canonical Business Model thansnap
is for actual users or even administrators. Docker is more mature and easier to use for sandboxing server apps. PodMan is also an interesting, more open docker alternative.AppImage
is much less troublesome way to package and sandbox desktop apps. – erwin Jan 27 '23 at 10:25