1. Introducción a Docker

Docker es una plataforma que permite empaquetar aplicaciones y sus dependencias en un entorno aislado y portátil llamado contenedor. A diferencia de una máquina virtual, un contenedor no necesita un sistema operativo completo, sino que comparte el kernel con el sistema anfitrión, lo que lo hace más ligero y eficiente.


¿Qué es Docker?

Docker es un software de código abierto que automatiza la implementación de aplicaciones dentro de contenedores. Estos contenedores son instancias de imágenes que definen todo lo necesario para ejecutar una aplicación (binarios, librerías, configuraciones, etc.).

Los contenedores permiten:


Contenedores vs máquinas virtuales

Característica Máquina Virtual Contenedor Docker
Sistema operativo Completo (guest OS) Comparte kernel con host
Uso de recursos Alto Bajo
Tiempo de arranque Lento (varios segundos) Rápido (milisegundos)
Portabilidad Menor Alta
Tamaño de imagen Varios GB Decenas o cientos de MB

Conceptos clave


Ejemplo básico

docker run hello-world

Este comando:

  1. Descarga una imagen llamada hello-world (si no está en caché)
  2. Crea un contenedor a partir de ella
  3. Lo ejecuta
  4. Muestra un mensaje de prueba

¿Por qué usar Docker?


Relación con el software libre

Docker, aunque tiene una empresa detrás, se basa en estándares abiertos y cuenta con una comunidad muy activa. Muchas de las imágenes disponibles (como Nginx, PostgreSQL, Nextcloud, etc.) son de proyectos libres, lo que permite construir soluciones enteramente con software de código abierto.


02 Instalación de Docker