Intercambio de Datos entre Contenedores
Uno de los grandes beneficios de los volúmenes de Docker es la capacidad de compartir datos entre contenedores. Vamos a crear otro contenedor que utilice el mismo volumen:
docker run -d --name another_container -v my_data:/app/shared_data ubuntu:latest sleep infinity
Este comando es muy similar al que usamos anteriormente, pero le damos al contenedor un nombre diferente y montamos el volumen en una ruta distinta dentro del contenedor.
Ahora, verifiquemos que este nuevo contenedor puede acceder a los datos que creamos antes:
docker exec another_container cat /app/shared_data/test.txt
Debería ver el mismo mensaje "Hello from Docker volume" que escribimos anteriormente. Esto demuestra que ambos contenedores están accediendo a los mismos datos.
Agreguemos más datos desde este nuevo contenedor:
docker exec another_container sh -c "echo 'Data from another container' >> /app/shared_data/test.txt"
Este comando añade una nueva línea a nuestro archivo test.txt.
Ahora, si comprobamos el contenido del archivo desde cualquiera de los contenedores, deberíamos ver ambas líneas:
docker exec my_container cat /app/data/test.txt
Debería ver tanto "Hello from Docker volume" como "Data from another container" en la salida.
Esto demuestra cómo se pueden utilizar los volúmenes de Docker para compartir información entre contenedores, lo cual es increíblemente útil para muchas aplicaciones.