tag remove hub example compose docker docker-compose

remove - Docker denominó volúmenes frente a DOC(contenedores de solo datos)



docker-compose (1)

Hasta la versión más reciente de Docker (v1.10), se pensó que podíamos usar DOC: contenedores solo de datos . Así que crearía tal DOC (basado en, por ejemplo, busybox) y usar --volumes-from para vincularlo a mi contenedor. Aún puede leer sobre esto en la documentación de Docker .

Con la nueva versión de Docker, se dice que en lugar de DOC deberíamos usar named volumes . Aquí hay un ejemplo de docker-compose.yml :

version: ''2'' services: elasticsearch: image: elasticsearch:2.2.0 command: elasticsearch -Des.network.host=0.0.0.0 ports: - "9201:9200" volumes: - "es-data:/usr/share/elasticsearch/data" volumes: es-data:

Aquí creamos y usamos el volumen llamado es-data .

Todavía no hay mucha documentación sobre esta nueva característica. Estoy preguntando:

  • ¿Podemos reemplazar el DOC con contenedores nombrados? ¿Cuánto tiempo persiste el volumen? ¿Qué pasa si elimino el contenedor que lo está usando?
  • ¿Cómo podemos, por ejemplo, hacer una copia de seguridad ahora? Anteriormente, podía docker run --rm --volumes-from es-data ... y luego ponerlo en tar it.

¿Podemos reemplazar el DOC con contenedores nombrados?

En muchos casos, sí, los contenedores con nombre serán una mejor opción.

¿Cuánto tiempo persiste el volumen? ¿Qué pasa si elimino el contenedor que lo está usando?

Si quita el contenedor, el volumen seguirá allí. La única forma de eliminar el volumen es usar docker-compose down -v o docker volume rm <volume name> .

¿Cómo podemos, por ejemplo, hacer una copia de seguridad ahora? Anteriormente, podía hacer un Docker run --rm --volumes-from -s-data ... y luego ponerlo en tar-it.

En lugar de --volumes-from , puede usar --volume=<volume name> .

Tenga en cuenta que los volúmenes creados por docker-compose siempre tienen como prefijo el nombre del proyecto, por lo tanto, si lo usa con un comando de docker el nombre completo es en realidad <project_name>_es-data .