Conociendo Dockerfile por primera vez y realizando la sincronización de datos entre contenedores
1. Primero familiarizado con Dockerfile
Dockerfile es simplemente un archivo de compilación y un script de comando que se usa para construir una imagen de Docker. El espejo se puede generar a través de este script, el espejo es capa por capa, los comandos del script uno por uno y cada comando es una capa.
Un simple dockerfile
# 创建一个dockerfile文件,名字可以随机 建议Dockerfile
# 文件中的内容 指令(大写) 参数
FROM centos
VOLUME ["volume01","volume02"]
CMD echo "---------end---------"
CMD /bin/bash
# 这里的每一个命令就是镜像的一层
Ejecute su propia imagen:
docker run -it 镜像id /bin/bash
Captura de pantalla:
Puede ver que hay volume01 y volume02. Estos son dos volúmenes de datos. El host debe tener su directorio de montaje correspondiente.
Podemos ver la información detallada del contenedor, podemos encontrar el catálogo correspondiente.
docker inspect 容器id
Captura de pantalla:
2. Realice la sincronización de datos entre contenedores
Es relativamente sencillo realizar la sincronización de datos entre contenedores. Solo necesita ejecutar un contenedor (con una carpeta montada) y luego agregar otro contenedor. --volumes-from 刚刚运行的容器名
Tome la imagen de arriba como ejemplo:
primero ejecute docker01
docker run -it --name docker01 ybg/centos:1.0
Captura de pantalla:
luego ejecute docker02
docker run -it --name docker02 --volumes-from docker01 ybg/centos:1.0
Captura de pantalla:
Luego, creamos una nueva carpeta de prueba en volume01 de docker02 para
verificar si la carpeta volume01 de docker01
está sincronizada. Puede ver que las dos carpetas están sincronizadas.
Para los contenedores que comparten datos, elimine cualquiera, los datos de otros contenedores no se eliminarán
Por ejemplo:
sobre la base de hace un momento, eliminamos docker01 para
ver la carpeta volume01 de docker02, el archivo de prueba todavía está allí