Descripción general de la configuración del demonio de Docker
Esta página te muestra cómo personalizar el demonio de Docker, dockerd.
NoteEsta página está dirigida a usuarios que han instalado Docker Engine de forma manual. Si estás utilizando Docker Desktop, consulta la página de configuración.
Configurar el demonio de Docker
Hay dos formas de configurar el demonio de Docker:
- Usar un archivo de configuración JSON. Esta es la opción preferida, ya que mantiene todas las configuraciones en un solo lugar.
- Usar opciones (flags) al iniciar
dockerd.
Puedes utilizar ambas opciones combinadas, siempre y cuando no especifiques la misma opción tanto como flag como en el archivo JSON. Si eso sucede, el demonio de Docker no se iniciará e imprimirá un mensaje de error.
Archivo de configuración
La siguiente tabla muestra la ubicación predeterminada en la que el demonio de Docker espera encontrar el archivo de configuración, según tu sistema y cómo estés ejecutando el demonio.
| SO y configuración | Ubicación del archivo |
|---|---|
| Linux, instalación normal | /etc/docker/daemon.json |
| Linux, modo Rootless | ~/.config/docker/daemon.json |
| Windows | C:\ProgramData\docker\config\daemon.json |
Para el modo rootless, el demonio respeta la variable XDG_CONFIG_HOME. Si está establecida, la ubicación esperada del archivo es $XDG_CONFIG_HOME/docker/daemon.json.
También puedes especificar explícitamente la ubicación del archivo de configuración al iniciar, utilizando la opción dockerd --config-file.
Conoce más sobre las opciones de configuración disponibles en los documentos de referencia de dockerd
Configuración mediante opciones (flags)
También puedes iniciar el demonio de Docker manualmente y configurarlo utilizando opciones. Esto puede ser útil para diagnosticar problemas.
A continuación se muestra un ejemplo de cómo iniciar manualmente el demonio de Docker, utilizando las mismas configuraciones que se mostraron en la configuración JSON anterior:
$ dockerd --debug \
--tls=true \
--tlscert=/var/docker/server.pem \
--tlskey=/var/docker/serverkey.pem \
--host tcp://192.168.59.3:2376
Conoce más sobre las opciones de configuración disponibles en los documentos de referencia de dockerd, o ejecutando:
$ dockerd --help
Directorio de datos del demonio
El demonio de Docker guarda todos los datos de forma persistente en un único directorio. Este realiza el seguimiento de todo lo relacionado con Docker, incluyendo contenedores, imágenes, volúmenes, definiciones de servicio y secretos.
De forma predeterminada, el demonio almacena los datos en:
/var/lib/dockeren LinuxC:\ProgramData\dockeren Windows
Al utilizar el
almacenamiento de imágenes de containerd (el predeterminado para Docker Engine 29.0 y versiones posteriores en instalaciones nuevas), el contenido de las imágenes y las instantáneas de los contenedores se almacenan en /var/lib/containerd. Otros datos del demonio (volúmenes, configuraciones) permanecen en /var/lib/docker.
Al utilizar
controladores de almacenamiento clásicos como overlay2 (el predeterminado para instalaciones actualizadas), todos los datos se almacenan en /var/lib/docker.
Configurar la ubicación del directorio de datos
Puedes configurar el demonio de Docker para que utilice un directorio de almacenamiento diferente mediante la opción de configuración data-root.
{
"data-root": "/mnt/docker-data"
}La opción data-root no afecta a los datos de imágenes y contenedores almacenados en /var/lib/containerd cuando se utiliza el almacenamiento de imágenes de containerd. Para cambiar la ubicación de almacenamiento de los snapshotters de containerd, utiliza el archivo de configuración del sistema de containerd:
version = 2
root = "/mnt/containerd-data"Asegúrate de usar un directorio dedicado para cada demonio. Si dos demonios comparten el mismo directorio, por ejemplo un recurso compartido NFS, experimentarás errores difíciles de diagnosticar.
Próximos pasos
Muchas opciones de configuración específicas se analizan a lo largo de la documentación de Docker. Algunos lugares recomendados para continuar son: