How data survives a container being deleted, when the container's own filesystem doesn't.
Containers are meant to be ephemeral — a container's own writable layer disappears the moment it's removed, which is exactly the problem volumes exist to solve. Named volumes are managed by Docker and live outside any single container's filesystem, persisting independently and able to be reattached to a new container later. Bind mounts instead map a specific path on the host directly into the container, which is great for development (editing code on the host and seeing it reflected live inside the container) but tightly couples the setup to the host's exact filesystem layout.
tmpfs mounts are a third option, storing data purely in memory and never touching disk at all — useful for sensitive, short-lived data that shouldn't persist anywhere. Choosing between the three comes down to what they're each actually built for: named volumes are the portable, Docker-managed default for real persistent data, bind mounts are for development-time convenience, and tmpfs is for ephemeral, in-memory-only needs.
What you'll walk away knowing