I am learning about Docker storage and I am little bit confused about
Question 1 :
Do we have for each docker host 1 backend store ( to store layers of images and writable-layers of containers ) ?
and if we configure a container-generated data store ( to persist the data wrote by a container (Volumes,Bind mounts,tmpfs mounts) ) are we going have 2 stores ( backend and container-generated-data store ) or is it just one store ?
Question 2 : suppose we have configured a volume to persist container-generated data , is it still gonning to be a a union fs layer somewhere else that is going to be persisted even if the container is removed ?
Question 3 : containers are runnable images , but concretly can you explain to me what are they ? are they just a unionFs layer ?
Question 4 :
if we uninstall or stop docker is the thin pool on loopback device saved or is it removed ?
and what if we configure a thin pool on a logical volume and we uninstall docker will we still have the images and the container-generated data on the logical volume ?
Question 5 : how do we configure docker to use a group volume ( or a logical volume ) in a remote machine ?
Question 6 : what is the different between the persistant storage configured for kubernetes/okd/openshift cluser and the persistant storage configured for docker and does the configuration for docker storage conflict with the one of kubernetes ? https://docs.okd.io/latest/install_config/persistent_storage/index.html https://docs.okd.io/latest/install_config/persistent_storage/index.html
Yes we have one and only one docker backend storage for each docker host
volumes
3 . Bind mounts : stored anywhere on the host system
4 . tmpfs mounts : stored anywhere on the host system
volumes are not used to persist all the container layer but a specific folder
containers are just layers on top of the image layer where the process that it runs are isolated using
writable layer using backend store on loop back device is ephemeral so it won't be persisted after stop of docker container nore uninstall of docker engine.
use SAN or NAS
docker storage is used to store images and container kubernetes is used to persist data of containers