Digamos que ejecuto un contenedor así:
docker run -v /host/folder:/data some-image si ejecutamos mv /host/folder /host/folder2 , estoy seguro de que sucederán cosas malas, y la única solución es detener el contenedor y reiniciarlo.
Docker utiliza montajes de enlace a la mount --bind para hacer que los volúmenes estén disponibles.
Los montajes de enlace se comportan de forma muy parecida a los enlaces duros. Si vincula foo a bar con ln foo bar , puede cambiar el nombre o eliminar foo y no afectará a bar porque ambos archivos apuntan al mismo inodo. Del mismo modo, si vincula foo a bar con mount --bind foo bar , mover o eliminar foo/ no afectará a bar/ .
Echemos un vistazo con dos directorios de prueba foo y bar :
$ mkdir foo bar $ touch foo/FOO bar/BAR $ ls foo/ FOO $ ls bar/ BAR Si montamos foo en la parte superior de la bar y luego renombramos foo , la bar no se ve afectada:
$ sudo mount --bind foo bar $ ls bar/ FOO $ mv foo foo.renamed $ ls bar/ FOO