Docker: Prácticas para reducir imágenes y preguntas de entrevista

Optimiza imágenes Docker con base slim, .dockerignore y multi-stage builds para reducir tamaño, acelerar CI/CD y bajar costos; conoce más en Q2BSTUDIO.

10 sept 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

En entornos de producción el tamaño de las imágenes Docker importa mucho. Imágenes grandes implican tiempos de compilación más largos, despliegues más lentos y mayores costes de almacenamiento en registros como GCP Artifact Registry o Docker Hub. En uno de nuestros proyectos en Q2BSTUDIO la imagen creció por encima de 1.9 GB y la optimizamos hasta 495 MB logrando una reducción del 75 por ciento y mejoras significativas en tiempo de CI CD y costes.

Problemas del enfoque inicial: se utilizó una imagen base pesada, se copiaron todos los archivos al contenedor invalidando la caché de Docker, no se excluyeron archivos innecesarios con .dockerignore y se dejaron caches de pip y apt en las capas. El resultado fue una imagen inflada y builds lentos.

Enfoque optimizado que aplicamos: 1) elegir una imagen base slim 2) instalar únicamente las herramientas necesarias 3) aprovechar el orden de las capas para cachear dependencias 4) limpiar caches de apt y pip 5) usar .dockerignore para evitar copiar archivos innecesarios. Por ejemplo, sustituimos una imagen como google/cloud-sdk:latest por python 3.12 slim e instalamos solo los componentes gcloud necesarios, con lo que la base pasó de ~3 GB a ~124 MB y añadimos solo lo imprescindible.

Buenas prácticas concretas aplicadas: copiar requirements.txt antes del resto del código para aprovechar la caché, ejecutar pip install con --no-cache-dir para no dejar wheels en la capa, borrar /var/lib/apt/lists para reducir el tamaño tras apt install, y mantener un .dockerignore con entradas como __pycache__/, *.pyc, .git, .vscode, .DS_Store para que esos archivos no entren en la imagen.

Beneficios obtenidos: reducción del 75 por ciento en el tamaño de la imagen, builds aproximadamente 3 veces más rápidos, pushes y pulls más ágiles con el registry, menos coste en almacenamiento y un perímetro de ataque menor al incluir solo lo esencial.

Ejemplo de cambios conceptuales aplicados en el Dockerfile: utilizar python 3.12 slim como base, instalar gcloud por apt solo con los componentes necesarios, copiar primero requirements.txt y ejecutar pip install sin cache, luego copiar el resto del código, y limpiar caches de apt. No incluimos aquí bloques de código literales para mantener el foco en las prácticas.

Optimización de procesos y servicios cloud. Si tu proyecto requiere despliegues en nubes públicas nuestros servicios cloud pueden ayudar a diseñar imágenes y pipelines eficientes. Consulta nuestros servicios cloud aws y azure en servicios cloud aws y azure para integrar buenas prácticas de despliegue y ahorro de costes.

Sobre Q2BSTUDIO: somos una empresa de desarrollo de software que crea aplicaciones a medida y software a medida, especialistas en inteligencia artificial e ia para empresas, ciberseguridad, servicios cloud y servicios de inteligencia de negocio. Ofrecemos soluciones integrales en automatización, agentes IA y power bi para mejorar la toma de decisiones y seguridad operativa.

Consejos adicionales: usar multi stage builds cuando se compilan artefactos o extensiones nativas, minimizar las herramientas instaladas en tiempo de ejecución, versionar las dependencias explícitamente para reproducibilidad y monitorizar el tamaño de las imágenes en el pipeline para detectar regresiones.

Preguntas frecuentes en entrevistas sobre optimización de imágenes Docker

Q1 Para reducir el tamaño de una imagen Docker que técnicas aplicas Responder con: elegir imágenes base slim o distroless, multi stage builds, .dockerignore, eliminar dependencias de compilación en la imagen final y limpiar caches de pip y apt.

Q2 Por qué copiar requirements.txt antes del resto del código Responder con: para aprovechar la caché de capas de Docker y evitar reinstalar dependencias cuando solo cambia el código de la aplicación.

Q3 Qué papel juega .dockerignore Responder con: evita que archivos y carpetas innecesarios entren en la build disminuyendo tamaño y mejorando seguridad y tiempo de build.

Q4 Cuándo usar multi stage builds Responder con: cuando necesitas compilar binarios, construir assets o compilar extensiones nativas; la etapa final solo recibe los artefactos necesarios en una imagen mínima.

Q5 Por qué no usar google cloud sdk latest directamente Responder con: porque es una imagen muy pesada; es preferible partir de una base ligera e instalar solo los componentes gcloud necesarios para mantener la imagen pequeña.

Si buscas desarrollar aplicaciones a medida, integrar inteligencia artificial, o mejorar la seguridad de tus despliegues en contenedores, en Q2BSTUDIO diseñamos soluciones a medida que abarcan desde desarrollo de software a medida hasta consultoría en ciberseguridad e inteligencia de negocio. Conecta con nuestros especialistas en inteligencia artificial en soluciones de inteligencia artificial para explorar cómo la IA y los agentes IA pueden optimizar tus procesos y productos.

Palabras clave integradas naturalmente para SEO aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.