¿Qué son los archivos .dockerignore y por qué debería usarlos?

¿Estás buscando mejorar tu juego de construcción de Docker? Intentando usar un archivo .dockerignore para compilaciones más eficientes y seguras. Jack Wallen le muestra cómo.

Imagen: Docker

A pesar de los rumores de lo contrario, Docker sigue siendo muy popular. Muchas grandes empresas y desarrolladores continúan dependiendo de esta tecnología de contenedores y lo harán durante mucho tiempo. Por lo tanto, si tiene la vista puesta en unirse a la base de los equipos de desarrollo empresarial, probablemente debería continuar perfeccionando sus habilidades en Docker.

Contenido imprescindible para desarrolladores

Si es nuevo en Docker, hay mucho que aprender. Probablemente ya haya descubierto cómo implementar una aplicación simple con Docker e incluso implementar aplicaciones más complicadas con el tiempo de ejecución. Pero hay otras habilidades y características que querrá conocer. Una de esas características es el archivo .dockerignore.

VER: Kit de contratación: desarrollador de JavaScript (TechRepublic Premium)

El archivo .dockerignore es muy similar al archivo .gitignore en que le permite especificar una lista de archivos o directorios que Docker debe ignorar durante el proceso de compilación. Esto puede resultar muy útil en determinados casos. Pero lo que es más importante, .dockerignore puede ayudarlo a reducir el tamaño de la imagen y acelerar drásticamente el proceso de construcción. Cualquiera que trabaje en un entorno increíblemente ajetreado comprende completamente la necesidad de acelerar las compilaciones. Y reducir el tamaño de las imágenes puede ser crucial, especialmente cuando su empresa paga por el almacenamiento y está implementando aplicaciones y servicios a escala.

Un beneficio adicional del archivo .dockerignore es que puede ayudar a reducir el plano de ataque de sus imágenes. Desea la menor cantidad posible de «cosas» extrañas dentro de sus imágenes (especialmente archivos de contraseña) y, a veces, puede iniciar una compilación olvidando que ha dejado algunos fragmentos en la carpeta de compilación. Le pasa a lo mejor de lo mejor.

Finalmente, el archivo .dockerignore puede ayudar con la invalidación de la caché. Es bastante común usar la instrucción COPY para copiar archivos y carpetas dentro de un contexto de compilación de Docker. Sin embargo, cada declaración dentro de su Dockerfile resultaría en la construcción de una nueva capa de imagen intermedia. Debido a esto, cuando realiza cambios en el Dockerfile una y otra vez, esto puede conducir a múltiples invalidaciones de caché que pueden desperdiciar recursos valiosos.

Dicho esto, averigüemos cómo usar el archivo .dockerignore y los tipos de elementos que podría querer incluir en ellos.

Cómo utilizar el archivo .dockerignore

Esto es realmente sencillo. En su carpeta de compilación de Docker, cree el archivo con el comando:

nano .dockerignore

Dentro de ese archivo, crea una lista de cosas para que Docker ignore, un elemento por línea. Entonces, ese archivo podría contener:

#Ignore el archivo de contraseñas passwords.txt #Ignore los registros del directorio logs / #Ignore las carpetas git y cache .git .cache #Ingore todos los archivos de markdown y class * .md ** / *. Class

Es un archivo .gitignore bastante sólido. Pero digamos, por alguna razón, que trabajas con imágenes .iso (tal vez estás construyendo tus imágenes base a partir de ellas), y accidentalmente dejas esa imagen en la carpeta de compilación. Haga eso y el proceso será considerablemente más largo y la imagen resultante también podría crecer bastante. Para evitar eso, agreguemos imágenes ISO al archivo .dockerignore así:

#Ignore el archivo de contraseñas passwords.txt #Ignore los registros del directorio logs / #Ignore las carpetas git y cache .git .cache #Ingore todos los archivos de markdown y class * .md ** / *. Class #Ignore imágenes ISO * .iso

Ahora, cuando vaya a ejecutar el proceso de compilación, no tiene que preocuparse de que recoja todo lo que haya agregado al archivo .dockerignore. Una vez que haya creado un archivo .dockerignore sólido, probablemente pueda moverlo de una compilación a otra (a menos que cree un archivo ignorado basado en un caso de uso específico).

Esta es una manera excelente (y fácil) de brindar un poco más de eficiencia y seguridad a sus compilaciones de Docker. Comience a usar archivos .dockerignore de inmediato … se alegrará de haberlo hecho.

Suscríbase a Cómo hacer que la tecnología funcione de TechRepublic en YouTube para obtener los últimos consejos tecnológicos para profesionales de negocios de Jack Wallen.

Ver también