La contenedorización ha transformado el despliegue de aplicaciones al empaquetar el software en entornos aislados y ligeros que garantizan la coherencia entre distintos sistemas. Docker en Ubuntu Server es una combinación potente que simplifica este proceso y permite a los desarrolladores y administradores de sistemas crear, enviar y ejecutar aplicaciones sin problemas. Como plataforma de contenedorización líder del sector, Docker optimiza los flujos de trabajo y mejora la escalabilidad del desarrollo de aplicaciones modernas.
En esta guía, le guiaremos por los pasos para instalar Docker en Ubuntu Server y ejecutar su primera aplicación en contenedores. Tanto si es nuevo en Docker como si busca optimizar su proceso de despliegue, este tutorial le ayudará a empezar con la contenedorización en Ubuntu Server.
Artículos anteriores:
01. Introducción a Ubuntu Server – SysOSX: AI & Cloud
02. Cómo configurar su primer servidor Ubuntu: guía para principiantes – SysOSX: AI & Cloud
03. Dominio de la línea de comandos de Linux para Ubuntu Server – SysOSX: AI & Cloud
04. Gestión de usuarios y permisos en Ubuntu Server: una guía completa – SysOSX: AI & Cloud
05. Conceptos básicos de redes para Ubuntu Server: una guía completa – SysOSX: AI & Cloud
06. Instalación y gestión de software en Ubuntu Server: una guía completa – SysOSX: AI & Cloud
07.Aplicación de parches y actualización de Ubuntu Server: una guía completa – SysOSX: AI & Cloud
08. Proteja su servidor Ubuntu: pasos prácticos para reforzar y proteger – SysOSX: AI & Cloud
09. Auditoría y registro de servidores Ubuntu
11. Registro centralizado para servidores Ubuntu: una guía imprescindible – SysOSX: AI & Cloud
12. Auditoría y cumplimiento para Ubuntu Server: prácticas recomendadas – SysOSX: AI & Cloud
14. Aloje varios sitios web en un solo servidor Ubuntu: consejos útiles – SysOSX: AI & Cloud
15. Gestión de almacenamiento y discos en Ubuntu Server: guía sencilla – SysOSX: AI & Cloud
18. Cómo configurar y usar LVM en Ubuntu Server: una guía completa – SysOSX: AI & Cloud
Índice
Requisitos previos
Antes de instalar Docker, asegúrese de que su servidor Ubuntu cumpla estos requisitos:
- Ubuntu 20.04 LTS o posterior (64 bits).
- privilegios sudo o acceso root.
- Conexión a internet estable para descargar paquetes.
Paso 1: Instalar Docker en Ubuntu Server
Actualizar los paquetes del sistema
sudo apt update && sudo apt upgrade -y
Instalar las dependencias necesarias
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
Añadir la clave GPG oficial de Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Configurar el repositorio de Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Instalar Docker Engine
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io -y
Verificar la instalación
sudo docker run hello-world
Si tiene éxito, verá un mensaje de confirmación como el siguiente.

Paso 2: Gestionar Docker como usuario no root
De forma predeterminada, Docker requiere privilegios de sudo . Para evitar tener que escribir sudo repetidamente:
- Crear un grupo de Docker (si no existe):
sudo groupadd docker - Añada su usuario al grupo:
sudo usermod -aG docker $USER - Aplicar los cambios:
newgrp docker
Paso 3: Ejecutar su primer contenedor
Lance un servidor web Nginx en segundos:
docker run -d -p 8080:80 --name my-nginx nginx
-d: Ejecutar en modo independiente (detached).-p 8080:80: Asignar el puerto 8080 del host al puerto 80 del contenedor.--name: Asignar un nombre personalizado al contenedor.
Verificar el acceso:
curl http://localhost:8080

Paso 4: Comandos esenciales de Docker
| Comando | Descripción |
|---|---|
docker ps | Mostrar los contenedores en ejecución |
docker images | Ver las imágenes descargadas |
docker stop <container-id> | Detener un contenedor |
docker rm <container-id> | Eliminar un contenedor |
docker rmi <image-id> | Eliminar una imagen |
Paso 5: Automatizar flujos de trabajo con Docker Compose
Para aplicaciones de varios contenedores, utilice Docker Compose:
- Instalar Docker Compose:
sudo apt install docker-compose -y
- Cree un archivo
docker-compose.yml:
version: '3'
services:
web:
image: nginx
ports:
- "8080:80"
- Iniciar la pila:
docker-compose up -d

Prácticas recomendadas para Docker en Ubuntu
- Actualizar Docker periódicamente:
sudo apt update && sudo apt upgrade docker-ce -y
- Limpiar los recursos no utilizados:
docker system prune -a
- Utilice imágenes oficiales de Docker Hub para mayor seguridad y fiabilidad.
Solución de problemas comunes
- Permiso denegado: Asegúrese de que su usuario esté en el
dockergrupo. - Conflictos de puertos: Compruebe si otros servicios están usando el mismo puerto.
- Errores al descargar imágenes: Verifique la conectividad a internet y la ortografía del nombre de la imagen.
Docker frente a otras herramientas de contenedorización
Aunque Docker domina el panorama de la contenedorización, conocer las alternativas ayuda a elegir la herramienta adecuada para su caso de uso:
| Herramienta | Tipo | Características clave | Ideal para |
|---|---|---|---|
| Docker | Contenedores de aplicaciones | – Enfoque en empaquetado portátil y centrado en aplicaciones<br>- Enorme ecosistema (Docker Hub)<br>- CLI y Compose sencillos | Desarrolladores, microservicios, flujos de trabajo de CI/CD |
| LXD | Contenedores de sistema | – Entornos completos de sistema operativo (como máquinas virtuales ligeras)<br>- Integración estrecha con LXC/Linux<br>- Gestión avanzada de recursos | Infraestructura como servicio, sustitución del hipervisor |
| Podman | Contenedores de aplicaciones | – Arquitectura sin demonio<br>- Sin root por defecto<br>- CLI compatible con Docker | Cargas de trabajo centradas en la seguridad, computación en el borde |
| containerd | Tiempo de ejecución de contenedores | – Tiempo de ejecución de bajo nivel (utilizado por Docker/Kubernetes)<br>- Diseño minimalista<br>- Enfoque en la escalabilidad | Clústeres de Kubernetes, despliegues a gran escala |
| CRI-O | Tiempo de ejecución de Kubernetes | – Optimizado para CRI de Kubernetes<br>- Ligero y seguro<br>- Respaldado por Red Hat | Clústeres de OpenShift/OKD, operaciones nativas de Kubernetes |
Por qué Docker sigue destacando
- Fácil para principiantes: Flujo de trabajo simplificado para el desarrollo y las pruebas de aplicaciones.
- Portabilidad: Los contenedores se ejecutan de forma idéntica en macOS, Windows y Linux.
- Apoyo de la comunidad: Más de 8 millones de imágenes de Docker Hub y documentación extensa.
Cuándo considerar alternativas
- LXD: Necesita aislamiento completo del SO (por ejemplo, alojar varios servicios con usuarios distintos).
- Podman: Prioriza la seguridad (por ejemplo, cargas de trabajo gubernamentales o sanitarias).
- containerd/CRI-O: Crear infraestructura nativa de Kubernetes.
Conclusión
Siguiendo esta guía, ha instalado Docker en Ubuntu Server y ha desplegado su primera aplicación en contenedores. La flexibilidad de Docker lo hace indispensable para DevOps, el desarrollo nativo de la nube y los entornos híbridos. Explore funciones avanzadas como Docker Swarm o integración de Kubernetes para escalar sus cargas de trabajo en contenedores.
Referencia: Documentación oficial de Docker
¿Qué sigue? Prepárese para explorar LXD para contenedores Linux
Ahora que domina Docker para la contenedorización de aplicaciones, ¡profundicemos en el mundo de los contenedores de sistema de Linux! Esté atento para nuestra próxima guía:
2 thoughts on “20. How to Install Docker on Ubuntu Server: A Step-by-Step Guide to Containerization”