Cómo usar el comando docker buildx du para verificar el uso de disco

DockerDockerBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás a utilizar eficazmente el comando docker buildx du para inspeccionar y comprender el uso de disco de tu caché de construcción (build cache) de Docker. Comenzarás verificando el uso básico de disco para tu constructor (builder) actual y entendiendo el significado de las columnas de salida, incluyendo CACHE ID, SIZE y LAST ACCESSED.

Además, explorarás cómo utilizar la salida detallada (verbose output) para obtener información más específica sobre registros individuales de caché y aprenderás a verificar el uso de disco para una instancia específica de constructor, permitiéndote gestionar y optimizar tu caché de construcción de manera más eficiente.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/SystemManagementGroup(["System Management"]) docker(("Docker")) -.-> docker/DockerfileGroup(["Dockerfile"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/SystemManagementGroup -.-> docker/system("Manage Docker") docker/DockerfileGroup -.-> docker/build("Build Image from Dockerfile") subgraph Lab Skills docker/ls -.-> lab-555048{{"Cómo usar el comando docker buildx du para verificar el uso de disco"}} docker/system -.-> lab-555048{{"Cómo usar el comando docker buildx du para verificar el uso de disco"}} docker/build -.-> lab-555048{{"Cómo usar el comando docker buildx du para verificar el uso de disco"}} end

Mostrar el uso de disco para el constructor actual

En este paso, aprenderás cómo verificar el uso de disco de tu constructor (builder) actual de Docker. El comando docker buildx du se utiliza para mostrar el uso de disco de la caché de construcción (build cache). Esto es útil para comprender cuánto espacio está consumiendo tu caché de construcción e identificar áreas potenciales para limpieza.

Primero, ejecutemos el comando docker buildx du sin opciones para ver la información básica del uso de disco del constructor actual.

docker buildx du

Deberías ver una salida similar a esta, mostrando el tamaño total de la caché de construcción. El tamaño exacto variará dependiendo de tus actividades de construcción previas.

CACHE ID                                    SIZE      LAST ACCESSED
... (output will vary)
TOTAL: 123.4MB

La salida muestra una lista de entradas de caché con su ID, tamaño y última vez que se accedió. La línea TOTAL al final indica el espacio total en disco utilizado por la caché de construcción para el constructor actual.

Comprender la salida de docker buildx du

En el paso anterior, ejecutaste el comando docker buildx du y viste una salida mostrando entradas de caché y un tamaño total. En este paso, profundizaremos en el entendimiento de las diferentes columnas de la salida.

Veamos nuevamente la salida:

CACHE ID                                    SIZE      LAST ACCESSED
... (output will vary)
TOTAL: 123.4MB
  • CACHE ID: Es un identificador único para cada entrada de caché. Estos IDs son generados por BuildKit y representan diferentes capas o etapas en tu proceso de construcción que han sido almacenadas en caché.
  • SIZE: Esta columna muestra el tamaño de la entrada de caché específica. Es la cantidad de espacio en disco que consume esta capa o etapa particular almacenada en caché.
  • LAST ACCESSED: Indica la última vez que se utilizó esta entrada de caché durante una construcción. Esta información es útil para identificar entradas de caché que ya no se usan activamente y que podrían eliminarse para liberar espacio.

La línea TOTAL al final proporciona la suma de los tamaños de todas las entradas de caché listadas, dándote el uso total de disco de la caché de construcción para el constructor actual. Comprender estas columnas te ayuda a analizar tu caché de construcción y gestionar su tamaño de manera efectiva.

Usar salida detallada para inspeccionar registros de uso de disco

En este paso, aprenderás cómo obtener información más detallada sobre las entradas de caché de construcción utilizando la opción de salida detallada (verbose) con el comando docker buildx du. La salida detallada proporciona información adicional que puede ser útil para depurar y comprender el origen de las capas en caché.

Para obtener la salida detallada, usa el flag -v o --verbose con el comando docker buildx du:

docker buildx du -v

La salida ahora incluirá más columnas, como USAGE, DESCRIPTION, y posiblemente otras dependiendo del tipo de entrada de caché.

CACHE ID                                    SIZE      LAST ACCESSED   USAGE     DESCRIPTION
... (output will vary)
TOTAL: 123.4MB
  • USAGE: Esta columna puede proporcionar información sobre cómo se está utilizando o haciendo referencia a la entrada de caché.
  • DESCRIPTION: Esta columna frecuentemente contiene una descripción del paso de construcción o instrucción que generó esta entrada de caché. Esto es muy útil para identificar qué partes de tu Dockerfile o proceso de construcción están contribuyendo al tamaño de la caché.

Al examinar la columna DESCRIPTION en la salida detallada, puedes ver qué instrucciones específicas de construcción (como RUN, COPY, etc.) corresponden a cada entrada de caché. Esto te ayuda a comprender la estructura de tu caché de construcción e identificar áreas donde podrías optimizar tu Dockerfile para reducir el tamaño de la caché.

Verificar el uso de disco para una instancia de builder específica

En este paso, aprenderás cómo verificar el uso de disco para una instancia específica de Docker builder. Por defecto, docker buildx du muestra el uso de disco para el builder activo actualmente. Sin embargo, puedes tener múltiples instancias de builder configuradas y quizás quieras inspeccionar el uso de caché de una diferente.

Primero, listemos las instancias de builder disponibles para identificar la que deseas inspeccionar. Puedes hacer esto usando el comando docker buildx ls:

docker buildx ls

La salida mostrará una lista de tus instancias de builder. Busca la columna NAME para identificar el nombre del builder que te interesa. El builder actualmente activo estará marcado con un asterisco (*).

NAME/NODE       DRIVER/ENDPOINT             STATUS   BUILDKIT             PLATFORMS
default *       docker                      running  v0.10.5+a34f333b1f   linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6
mybuilder       docker-container            running  v0.10.5+a34f333b1f   linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6

Ahora, para verificar el uso de disco para una instancia de builder específica, puedes usar el flag --builder seguido del nombre del builder. Por ejemplo, si tienes un builder llamado mybuilder, ejecutarías:

docker buildx du --builder mybuilder

Reemplaza mybuilder con el nombre real de la instancia de builder que deseas inspeccionar. Este comando mostrará el uso de disco específicamente para la caché asociada con esa instancia de builder. Esto es útil si estás trabajando con diferentes configuraciones de builder o si deseas aislar el uso de caché de un entorno de construcción particular.

Resumen

En este laboratorio, aprendiste a utilizar el comando docker buildx du para verificar el uso de disco de tu caché de construcción de Docker. Comenzaste ejecutando el comando básico para ver el tamaño total y una lista de entradas de caché.

Luego adquiriste un entendimiento más profundo de las columnas de salida, incluyendo CACHE ID, SIZE y LAST ACCESSED, que proporcionan detalles sobre cada entrada de caché individual. También exploraste cómo usar la salida detallada (-v) para ver registros más completos de cada entrada de caché y aprendiste a verificar el uso de disco para una instancia específica de builder indicando su nombre.