En esta lección aprenderás instrucción RUN Dockerfile con un enfoque práctico: qué ejecuta durante el build, cómo afecta a las capas de la imagen y qué errores debes evitar para no crear imágenes lentas, pesadas o frágiles.
RUN no sirve para arrancar la aplicación cuando el contenedor se ejecuta; para eso están CMD y ENTRYPOINT. RUN se ejecuta durante la construcción de la imagen.
👉 Y recuerda, si quieres aprender más de Linux, pincha en este curso de Linux gratis
🐳 Si quieres aprender más de Docker, pincha en este curso de Docker gratis
Qué hace la instrucción RUN Dockerfile
Problema: una imagen necesita instalar paquetes, crear carpetas o preparar archivos antes de poder ejecutarse como contenedor.
Qué aporta Docker: RUN permite ejecutar comandos en tiempo de build y guardar el resultado como una capa de la imagen.
| Uso | Recomendación |
|---|---|
| Instalar paquetes | Combina update e install en la misma instrucción. |
| Reducir tamaño | Limpia cachés del gestor de paquetes cuando aplique. |
| Reproducibilidad | Evita descargar scripts remotos sin verificar. |
Ejemplo práctico
FROM ubuntu:24.04
RUN apt-get update \n && apt-get install -y --no-install-recommends ca-certificates curl \n && rm -rf /var/lib/apt/lists/*
CMD ["bash"]Este ejemplo mantiene juntos apt-get update e install para evitar cachés obsoletas, reduce paquetes recomendados innecesarios y limpia listas de apt al final de la misma capa.
Errores comunes
- Separar apt-get update e install: puede romper caché y dejar builds inconsistentes.
- Usar RUN para arrancar servicios: RUN construye la imagen; no define el proceso del contenedor.
- Instalar demasiados paquetes: aumenta tamaño y superficie de ataque.
- No limpiar cachés: deja archivos innecesarios dentro de la imagen.
Advertencia: no metas secretos en RUN. Los comandos y capas pueden quedar en el historial de la imagen o en la caché del build.
Lecciones relacionadas del curso Docker
- Instrucción FROM
- Instrucción COPY
- Instrucción CMD
- Instrucción ENTRYPOINT
- Buenas prácticas Dockerfile
Documentación oficial y recursos
La instrucción RUN Dockerfile queda bien usada cuando prepara la imagen durante el build, mantiene capas razonables y evita instalar o guardar material que no necesitas.
Cuando termines, continúa con COPY, ADD, CMD y ENTRYPOINT para separar claramente construcción de imagen y ejecución de contenedor.

