Docker permite ejecutar aplicaciones aisladas en contenedores ligeros que arrancan en segundos. Si trabajas con servidores, desarrollo o automatización, instalar Docker en Ubuntu es uno de los primeros pasos que merece la pena dar.
En esta guía veremos cómo instalar Docker Engine en Ubuntu desde el repositorio oficial, paso a paso y sin atajos.
Qué es Docker y por qué merece la pena
Docker empaqueta una aplicación y sus dependencias en un contenedor. Ese contenedor se ejecuta de forma idéntica en cualquier máquina que tenga Docker instalado: tu portátil, un servidor en la nube o una máquina de un compañero.
Las ventajas principales frente a instalar todo directamente en el sistema son:
- Reproducibilidad: el entorno es idéntico donde se ejecute.
- Aislamiento: una aplicación no interfiere con otra.
- Portabilidad: se mueve el contenedor, no la configuración del servidor.
- Despliegue rápido: un contenedor arranca en unos pocos segundos.
Docker es gratuito para uso personal y profesional. La versión Community Edition (CE) cubre la mayoría de necesidades.
Requisitos previos
Antes de empezar necesitas:
- Ubuntu 22.04, 24.04 o una versión reciente compatible.
- Acceso a una cuenta con permisos
sudo. - Conexión a internet.
- Un terminal abierto.
Si trabajas con una versión de Ubuntu diferente a la 22.04 o 24.04, los pasos son prácticamente idénticos. La documentación oficial de Docker incluye guías específicas para Ubuntu 20.04, 22.04 y 24.04.
Comprobar la versión de Ubuntu
Antes de nada, comprueba la versión exacta de tu sistema:
lsb_release -a
Si lsb_release no está instalado, alternativa equivalente:
cat /etc/os-release
Anota el valor de VERSION_CODENAME. Necesitarás este dato más adelante. Por ejemplo:
- Ubuntu 24.04 →
noble - Ubuntu 22.04 →
jammy
Actualizar los paquetes del sistema
Actualiza la lista de paquetes disponibles y upgradea los que ya están instalados:
sudo apt update && sudo apt upgrade -y
Esto garantiza que no haya dependencias desactualizadas que puedan causar problemas durante la instalación.
Instalar las dependencias necesarias
Docker necesita que el sistema pueda gestionar repositorios HTTPS y claves GPG. Instala los paquetes que lo permiten:
sudo apt install ca-certificates curl -y
ca-certificates: permite verificar certificados SSL.curl: se usa para descargar la clave de firma del repositorio de Docker.
Añadir el repositorio oficial de Docker
Docker mantiene su propio repositorio APT. Añadirlo te permite instalar y actualizar Docker desde las fuentes oficiales, no desde los paquetes del sistema que suelen estar desactualizados.
Paso 1: crear el directorio de claves GPG (si no existe):
sudo install -m 0755 -d /etc/apt/keyrings
Paso 2: descargar la clave de firma de Docker:
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
Paso 3: dar permisos de lectura a la clave:
sudo chmod a+r /etc/apt/keyrings/docker.asc
Paso 4: añadir el repositorio:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Este comando detecta automáticamente la arquitectura de tu procesador y la versión de tu Ubuntu.
Paso 5: actualizar la lista de paquetes para incluir el nuevo repositorio:
sudo apt update
Instalar Docker Engine
Con el repositorio configurado, instala Docker Engine y sus componentes principales:
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Esto instala:
- docker-ce: Docker Engine.
- docker-ce-cli: cliente de línea de comandos.
- containerd.io: gestor de contenedores.
- docker-buildx-plugin: herramienta para construir imágenes.
- docker-compose-plugin: Docker Compose integrado como plugin.
Verificar que Docker funciona
Comprueba que Docker se instaló correctamente ejecutando el siguiente comando:
docker --version
Deberías ver algo como:
Docker version 27.x.x, build xxxxxxx
Para comprobar que el daemon de Docker está activo:
sudo systemctl status docker
Si ves active (running) en verde, todo está en orden. Pulsa q para salir.
Ejecutar un contenedor de prueba
La forma más rápida de confirmar que Docker funciona es ejecutar el contenedor clásico hello-world:
sudo docker run hello-world
Si no encuentra la imagen localmente, la descargará automáticamente. Tras ejecutarse, verás un mensaje confirmando que todo funciona correctamente:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
Comprobar el estado del servicio de Docker
Si necesitas detener, reiniciar o consultar Docker en cualquier momento, estos son los comandos básicos del servicio:
# Ver estado del servicio
sudo systemctl status docker
# Detener Docker
sudo systemctl stop docker
# Iniciar Docker
sudo systemctl start docker
# Reiniciar Docker
sudo systemctl restart docker
Configurar Docker para que arranque automáticamente
Para que Docker se inicie solo cada vez que enciendes o reinicias tu servidor:
sudo systemctl enable docker
Si en algún momento quieres desactivar esta opción:
sudo systemctl disable docker
En la mayoría de instalaciones de servidor esto ya viene activado por defecto. Es buena idea verificarlo con systemctl is-enabled docker.
Usar Docker sin sudo
Por defecto, los comandos de Docker requieren permisos sudo. Si quieres ejecutar docker directamente como usuario normal, añade tu usuario al grupo docker:
sudo usermod -aG docker $USER
Importante: este cambio toma efecto en la nueva sesión de terminal o ejecutando:
newgrp docker
Tras esto, puedes comprobarlo con:
docker run hello-world
Si funciona sin sudo, la configuración es correcta.
Nota de seguridad: añadir usuarios al grupo
dockerles concede acceso equivalente a root en el sistema Docker. Solo hazlo en equipos de uso personal o en entornos que controlas.
Comandos frecuentes de Docker
Una vez instalado, estos son los comandos que usarás con más frecuencia:
# Listar contenedores en ejecución
docker ps
# Listar todos los contenedores (incluyendo detenidos)
docker ps -a
# Listar imágenes descargadas
docker images
# Ejecutar un contenedor en segundo plano
docker run -d --name mi-contenedor imagen:tag
# Detener un contenedor
docker stop nombre-o-id
# Eliminar un contenedor
docker rm nombre-o-id
# Eliminar una imagen
docker rmi imagen:tag
# Ver logs de un contenedor
docker logs nombre-o-id
# Ejecutar comandos dentro de un contenedor
docker exec -it nombre-o-id /bin/bash
Cómo desinstalar Docker
Si en algún momento necesitas eliminar Docker por completo, sigue estos pasos en orden:
Paso 1: desinstalar los paquetes:
sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Paso 2: eliminar los datos de Docker:
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
Esto borra imágenes, volúmenes y configuraciones. Una vez ejecutado, Docker queda completamente limpio del sistema.
Problemas frecuentes
Permission denied al ejecutar docker
Si obtienes un error de permisos al ejecutar docker sin sudo, verifica que tu usuario está en el grupo docker:
groups
Si no aparece docker, ejecuta sudo usermod -aG docker $USER y cierra la sesión o ejecuta newgrp docker.
El daemon de Docker no arranca
Si systemctl status docker muestra un error, revisa los logs:
sudo journalctl -xeu docker
La causa más habitual es un conflicto con otra instalación anterior o un daemon de contenedores inactivo. En Ubuntu, containerd se instala automáticamente con Docker, pero si hay conflictos:
sudo systemctl start containerd
sudo systemctl restart docker
No se conecta al daemon de Docker
Si ves Cannot connect to the Docker daemon, verifica que el servicio está activo:
sudo systemctl status docker
Si está inactivo, inícialo:
sudo systemctl start docker
El repositorio de Docker no se añade correctamente
Si al ejecutar apt update aparecen errores relacionados con el repositorio de Docker, revisa que la clave GPG existe y tiene permisos de lectura:
ls -l /etc/apt/keyrings/docker.asc
Si el archivo no existe, repite los pasos de descarga de la clave GPG. También puede ayudar eliminar y volver a crear la lista de fuentes:
sudo rm /etc/apt/sources.list.d/docker.list
# y repetir el paso de añadir el repositorio
Conclusión
Con estos pasos tienes Docker instalado, configurado y listo para usar en tu Ubuntu. A partir de aquí, los siguientes pasos lógicos son:
- Aprender a crear y gestionar imágenes propias con Dockerfiles.
- Usar Docker Compose para aplicaciones con varios contenedores.
- Configurar volúmenes para persistir datos.
Docker cambia la forma de desplegar y desarrollar software. Una vez supera la curva inicial de instalación, el día a día es considerablemente más sencillo.