Mira la lección en vídeo
Accede al vídeo completo de esta lección y a más contenido exclusivo con el Plan Plus.
Desbloquear Plan PlusInstalación de Docker Engine / Docker Desktop
Docker ofrece dos distribuciones principales para desarrolladores: Docker Desktop para sistemas de escritorio y Docker Engine para servidores y entornos de producción. La elección entre ambos depende del sistema operativo y las necesidades específicas del proyecto.
Requisitos del sistema
Antes de proceder con la instalación, es fundamental verificar que el sistema cumple con los requisitos mínimos para ejecutar Docker correctamente.
Para Windows:
- Windows 10 versión 2004 o superior (Build 19041) o Windows 11
- WSL 2 habilitado y configurado
- Virtualización habilitada en BIOS/UEFI
- Mínimo 4 GB de RAM (recomendado 8 GB)
- 4 GB de espacio libre en disco
Para macOS:
- macOS 11 Big Sur o superior
- Chips Apple Silicon (M1/M2/M3) o Intel x86_64
- Mínimo 4 GB de RAM (recomendado 8 GB)
- 4 GB de espacio libre en disco
Para Linux:
- Distribución soportada (Ubuntu, Debian, CentOS, RHEL, Fedora, SUSE)
- Kernel versión 3.10 o superior
- Arquitectura x86_64, arm64 o armhf
- Mínimo 2 GB de RAM
- 2 GB de espacio libre en disco
Docker Desktop: la opción integral
Docker Desktop es la solución completa que incluye Docker Engine, Docker CLI, Docker Compose, Kubernetes local y una interfaz gráfica intuitiva. Es la opción recomendada para desarrolladores que buscan una experiencia unificada.
Instalación en Windows:
El primer paso es configurar WSL 2, que es el backend recomendado para Docker Desktop en Windows:
- Abrir PowerShell como administrador
- Ejecutar el comando para habilitar WSL:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- Habilitar la característica de máquina virtual:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- Reiniciar el sistema y establecer WSL 2 como versión predeterminada:
wsl --set-default-version 2
Una vez configurado WSL 2, descargar Docker Desktop desde el sitio oficial de Docker y seguir el asistente de instalación. Durante la instalación, asegurarse de seleccionar la opción "Use WSL 2 instead of Hyper-V" para obtener el mejor rendimiento.
Instalación en macOS:
Docker Desktop para Mac está disponible en dos versiones: para chips Apple Silicon y para procesadores Intel. Es crucial descargar la versión correcta:
- Para Mac con chip Apple Silicon (M1/M2/M3): Docker Desktop for Mac with Apple silicon
- Para Mac con procesador Intel: Docker Desktop for Mac with Intel chip
El proceso de instalación es straightforward: descargar el archivo .dmg correspondiente, arrastrarlo a la carpeta Applications y ejecutar la aplicación. Docker Desktop se encargará automáticamente de configurar todos los componentes necesarios.
Instalación en Linux (Ubuntu/Debian):
Aunque Docker Desktop está disponible para algunas distribuciones Linux, muchos desarrolladores prefieren instalar Docker Engine directamente. Para instalar Docker Desktop en Ubuntu:
# Actualizar repositorios
sudo apt-get update
# Instalar dependencias
sudo apt-get install ca-certificates curl gnupg lsb-release
# Agregar la clave GPG oficial de Docker
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# Configurar el repositorio
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Descargar Docker Desktop
wget https://desktop.docker.com/linux/main/amd64/docker-desktop-amd64.deb
# Instalar el paquete
sudo apt install ./docker-desktop-amd64.deb
Docker Engine: instalación nativa en Linux
Para entornos de servidor o desarrolladores que prefieren una instalación más ligera sin interfaz gráfica, Docker Engine es la opción ideal.
Instalación en Ubuntu/Debian:
# Desinstalar versiones anteriores si existen
sudo apt-get remove docker docker-engine docker.io containerd runc
# Instalar Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Configuración de permisos sin root:
Por defecto, Docker requiere privilegios de administrador. Para evitar usar sudo
constantemente, agregar el usuario al grupo docker:
# Crear el grupo docker (si no existe)
sudo groupadd docker
# Agregar el usuario actual al grupo
sudo usermod -aG docker $USER
# Aplicar los cambios de grupo
newgrp docker
Después de esta configuración, será posible ejecutar comandos Docker sin privilegios de administrador.
Instalación en CentOS/RHEL/Fedora:
# Instalar yum-utils
sudo yum install -y yum-utils
# Agregar el repositorio Docker
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# Instalar Docker Engine
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Iniciar el servicio Docker
sudo systemctl start docker
sudo systemctl enable docker
Configuración inicial y servicios
Una vez completada la instalación, es importante configurar Docker para que se inicie automáticamente con el sistema:
En sistemas con systemd (la mayoría de distribuciones Linux modernas):
# Habilitar el servicio Docker al arranque
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
# Iniciar el servicio inmediatamente
sudo systemctl start docker
En Docker Desktop (Windows/macOS):
Docker Desktop se configura automáticamente para iniciarse con el sistema. Esta configuración puede modificarse desde la interfaz gráfica en Settings > General > "Start Docker Desktop when you log in".
La instalación correcta de Docker proporciona la base sólida necesaria para comenzar a trabajar con contenedores y aprovechar todo el potencial del ecosistema Docker en el desarrollo moderno de aplicaciones.
Comprobar instalación con hello-world y versión de Docker
Guarda tu progreso
Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.
Más de 25.000 desarrolladores ya confían en CertiDevs
Una vez completada la instalación de Docker, es fundamental verificar que todos los componentes funcionen correctamente antes de comenzar a trabajar con contenedores. Esta verificación se realiza mediante dos comandos esenciales que confirman tanto la instalación como la comunicación con el Docker daemon.
Verificar la versión de Docker
El primer paso para confirmar una instalación exitosa es comprobar que Docker está correctamente instalado y accesible desde la línea de comandos. El comando docker --version
proporciona información básica sobre la versión instalada:
docker --version
Este comando debería mostrar una salida similar a:
Docker version 28.0.0, build 1234567
Para obtener información más detallada sobre la instalación, incluyendo la versión del servidor Docker Engine, utilizar el comando docker version
:
docker version
La salida incluirá información tanto del cliente Docker como del servidor Docker Engine:
Client: Docker Engine - Community
Version: 28.0.0
API version: 1.47
Go version: go1.21.6
Git commit: 1234567
Built: Wed Jan 15 10:00:00 2025
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 28.0.0
API version: 1.47 (minimum version 1.24)
Go version: go1.21.6
Git commit: abcdefg
Built: Wed Jan 15 10:00:00 2025
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.7.12
GitCommit: xyz789
runc:
Version: 1.1.12
GitCommit: abc123
docker-init:
Version: 0.19.0
GitCommit: def456
Si este comando se ejecuta correctamente y muestra información tanto del cliente como del servidor, significa que Docker está funcionando correctamente y el daemon está en ejecución.
Ejecutar el contenedor hello-world
El contenedor hello-world es la forma estándar de verificar que Docker puede descargar imágenes, crear contenedores y ejecutarlos correctamente. Este contenedor está diseñado específicamente para pruebas de instalación:
docker run hello-world
Si la instalación es correcta, este comando producirá una salida detallada que explica exactamente qué ha ocurrido durante la ejecución:
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
Esta salida confirma que Docker ha completado exitosamente cuatro pasos críticos:
- 1. El cliente Docker se ha comunicado correctamente con el daemon Docker
- 2. El daemon ha podido descargar la imagen hello-world desde Docker Hub
- 3. Se ha creado y ejecutado un contenedor a partir de esa imagen
- 4. La salida del contenedor se ha transmitido correctamente al terminal
Verificación en diferentes sistemas operativos
En Windows con WSL 2:
Al ejecutar los comandos de verificación en Windows, es importante confirmar que Docker está utilizando WSL 2 como backend. El comando docker version
debería mostrar OS/Arch: linux/amd64
en la sección del servidor, indicando que los contenedores se ejecutan en el subsistema Linux.
En macOS:
En sistemas macOS, especialmente en chips Apple Silicon, verificar que Docker muestre la arquitectura correcta. Para chips M1/M2/M3, la salida debería indicar OS/Arch: linux/arm64
, mientras que en procesadores Intel debería mostrar linux/amd64
.
En Linux nativo:
En instalaciones Linux nativas, la verificación es más directa. Si se configuraron los permisos de usuario correctamente, los comandos deberían ejecutarse sin necesidad de sudo
. Si aparece un error de permisos, verificar que el usuario esté en el grupo docker:
groups $USER
Solución de problemas comunes
Si el comando docker version
muestra solo información del cliente pero no del servidor, esto indica que el daemon Docker no está ejecutándose. Las soluciones varían según el sistema:
En Linux:
sudo systemctl start docker
sudo systemctl status docker
En Windows/macOS con Docker Desktop:
Verificar que Docker Desktop esté ejecutándose desde la bandeja del sistema o el dock. Si no está activo, iniciarlo manualmente desde el menú de aplicaciones.
Si el contenedor hello-world no se ejecuta correctamente, verificar la conectividad a Internet ya que Docker necesita descargar la imagen desde Docker Hub durante la primera ejecución.
Información del sistema Docker
Para obtener una visión completa del estado del sistema Docker, utilizar el comando docker info
:
docker info
Este comando proporciona información detallada sobre:
- Número de contenedores activos y detenidos
- Número de imágenes almacenadas localmente
- Versión del kernel y sistema operativo
- Configuración de almacenamiento y red
- Configuración de seguridad y plugins instalados
La verificación exitosa mediante estos comandos garantiza que Docker está completamente funcional y listo para comenzar a trabajar con contenedores en el entorno de desarrollo.
Aprendizajes de esta lección de Docker
- Conocer los requisitos mínimos para instalar Docker en Windows, macOS y Linux.
- Aprender a instalar Docker Desktop en Windows, macOS y Linux.
- Entender cómo instalar Docker Engine nativamente en distribuciones Linux.
- Configurar permisos para usar Docker sin privilegios de administrador.
- Verificar la instalación de Docker mediante comandos y ejecutar el contenedor hello-world.
Completa este curso de Docker y certifícate
Únete a nuestra plataforma de cursos de programación y accede a miles de tutoriales, ejercicios prácticos, proyectos reales y nuestro asistente de IA personalizado para acelerar tu aprendizaje.
Asistente IA
Resuelve dudas al instante
Ejercicios
Practica con proyectos reales
Certificados
Valida tus conocimientos
Más de 25.000 desarrolladores ya se han certificado con CertiDevs