volumen example compose docker docker-volume

compose - dockerfile example



¿Cómo cambiar la ubicación predeterminada para el comando "docker create volume"? (2)

2017: con 17.05.0-ce (2017-05-04) , el PR 28696 desaprueba --graph flag a favor o --data-root : commit 1ecaed0

El nombre " graph " es un término heredado de hace mucho tiempo cuando solía haber un directorio en la ubicación predeterminada /var/lib/docker/graph .

Sin embargo, la bandera indicaría la ruta del directorio principal del directorio " graph " que contiene no solo datos de imagen sino también datos de volúmenes, contenedores y redes.
En la versión más reciente de la ventana acoplable, este directorio también contiene el estado del clúster de enjambres y los certificados de nodo.

Con los números 5922 y PR 5978 , la documentación ha sido actualizada.

Example :

ExecStart=/usr/bin/dockerd -H fd:// --data-root=/mnt/ssd/lib/docker

2016 (ahora en desuso)

Solo conozco una opción de ventana acoplable para cambiar /var/lib/docker sí misma, no sus subcarpetas (parte de su "gráfico" utilizado por un controlador de almacenamiento de daemon docker )

Ver demonio docker "Opciones varias" :

Docker admite enlaces de software para el directorio de datos de Docker ( /var/lib/docker ) y para /var/lib/docker/tmp .
El DOCKER_TMPDIR y el directorio de datos pueden configurarse así:

DOCKER_TMPDIR=/mnt/disk2/tmp /usr/local/bin/docker daemon -D -g /var/lib/docker -H unix:// > /var/lib/docker-machine/docker.log 2>&1 # or export DOCKER_TMPDIR=/mnt/disk2/tmp /usr/local/bin/docker daemon -D -g /var/lib/docker -H unix:// > /var/lib/docker-machine/docker.log

Como se menciona en " ¿Dónde se almacenan las imágenes de la ventana acoplable en la máquina host? " (Y eso también se aplicaría a los contenedores / volúmenes):

El contenido del directorio /var/lib/docker varía según el controlador que Docker esté usando para el almacenamiento .

Al crear volúmenes a través de la API de volumen, es decir, como el patrón de volumen del contenedor ya no es necesariamente la mejor práctica:

# docker volume inspect test-data [ { "Name": "test-data", "Driver": "local", "Mountpoint": "/var/lib/docker/volumes/test-data/_data" } ]

Me gustaría, por ejemplo, que los volúmenes de la ventana acoplable existan en / data (que se monta en un volumen físico diferente).

Esto no se puede hacer con los enlaces simbólicos, se puede hacer con los montajes de enlace, pero me pregunto si hay alguna configuración en Docker para cambiar la ubicación predeterminada para cada volumen por separado.


Puede cambiar el lugar donde Docker almacena sus archivos, incluidos los volúmenes, cambiando uno de sus parámetros de inicio denominado --data-root .

Si está usando systemd para la administración de servicios, el archivo generalmente se encuentra en /lib/systemd/system/docker.service . Edita el archivo como tal:

# Old - taken from the generated docker.service file in Ubuntu 16.04''s docker.io package ExecStart=/usr/bin/dockerd -H fd:// $DOCKER_OPTS # New ExecStart=/usr/bin/dockerd --data-root /new_location/ -H fd:// $DOCKER_OPTS

Alternativamente, puede editar el archivo de configuración del demonio Docker, que por defecto es /etc/docker/daemon.json .

Reinicie el demonio de Docker y sus volúmenes estarán en /new_location/volumes/{volume_name}/_data

Nota : ¡cuidado en la producción y también localmente! También tiene que mover los datos existentes de /var/lib/docker/ a la nueva ubicación para que la instalación de su docker funcione como se esperaba.

Puede usar enlaces simbólicos desde la nueva ubicación si desea que haya carpetas específicas en un lugar específico.