Volumen de datos del contenedor de Docker
Pensamiento
Una vez que se elimina el contenedor de Docker, los datos generados en el contenedor también se destruirán
El contenedor se puede montar en el volumen de datos y el volumen de datos no se eliminará si se elimina el contenedor.
¿Pueden un contenedor Docker y una máquina externa intercambiar archivos directamente?
No, la red entre la máquina externa y el contenedor no es interoperable
¿Quiere intercambiar datos entre contenedores?
Usando el volumen de datos, dos contenedores se montan en el mismo volumen de datos
Introducción al volumen de datos y su función
Introducción
1. El volumen de datos es un directorio o archivo en el host.
2. Cuando el directorio del contenedor y el directorio del volumen de datos están vinculados, la modificación de la otra parte se sincronizará inmediatamente
3. Un volumen de datos puede ser montado por varios contenedores en al mismo tiempo
4. También se puede montar un contenedor. Se pueden montar varios volúmenes de datos.
efecto
1: El volumen de datos puede compartir o reutilizar datos entre contenedores
2: Los cambios en el volumen pueden tener efecto directamente
3: Los cambios en el volumen de datos no se incluirán en la actualización del espejo
4: El ciclo de vida del volumen de datos dura hasta que no se usa ningún contenedor. Es hasta
5. Persistencia de los datos del contenedor (completamente independiente del ciclo de vida del contenedor, por lo que Docker no eliminará su volumen de datos montado cuando se elimine el contenedor)
6. Comunicación indirecta de la máquina externa y el contenedor
7. Datos intercambio entre contenedores
Configurar el volumen de datos
Al crear un contenedor de inicio, use el parámetro -v para configurar el volumen de datos
docker run ... –v 宿主机目录(文件):容器内目录(文件) ...
Por ejemplo
Cree un contenedor llamado prueba y móntelo en el volumen de datos / root / data_contain
docker run -it --name=test -v /root/data:/root/data_contain redis:lastest
Precauciones:
-
El directorio debe ser una ruta absoluta
-
Si el directorio no existe, se creará automáticamente
-
Se pueden montar varios volúmenes de datos
Intercambio de datos de varios contenedores
-
Varios contenedores montan el mismo volumen de datos
-
Contenedor de volumen de datos
1. Cree e inicie el contenedor de volumen de datos c3, use el parámetro -v para configurar el volumen de datos
docker run –it --name=c3 –v /volume centos:7 /bin/bash
- Cree e inicie el contenedor c1 c2, use el parámetro --- volúmenes-desde para establecer el volumen de datos
docker run –it --name=c1 --volumes-from c3 centos:7 /bin/bash
docker run –it --name=c2 --volumes-from c3 centos:7 /bin/bash
resumen
Concepto de volumen de datos
Un directorio o archivo en el host
Función de volumen de datos
Persistencia de los datos del contenedor
Intercambio de datos de clientes y contenedores
Intercambio de datos entre contenedores
Contenedor de volumen de datos
Cree un contenedor, monte un directorio y deje que otros contenedores hereden de este contenedor (--volume-from).
Realice la configuración del volumen de datos de una manera sencilla
Nota
1. El contenido del volumen de datos cambia. El contenido del contenedor también cambiará
. 2. El contenido del contenedor cambiará . El contenido del volumen de datos también cambiará
. 3. Un contenedor está montado en un volumen de datos que ya tiene contenido Existe el contenido del volumen de datos
4. El contenido del contenedor es consistente con el contenido del volumen de datos
5. El volumen de datos no se borrará si se borra el contenedor