Learning Center
Entorno Docker

Instalar y usar Docker Compose en Ubuntu: guía completa

14 ene 2026
Emmanuel Oyibo
Emmanuel Oyibo

Docker Compose ha cambiado de forma fundamental la manera en que los desarrolladores trabajan con aplicaciones contenerizadas, especialmente al coordinar servicios que dependen entre sí. Esta herramienta reemplaza la gestión manual de contenedores por un flujo de trabajo estructurado basado en YAML, lo que permite a los equipos definir arquitecturas completas de aplicaciones en un único archivo de configuración.

En entornos Ubuntu, esto se traduce en despliegues reproducibles, escalado simplificado y una reducción del esfuerzo operativo. Esta guía ofrece una perspectiva actualizada sobre la instalación y el uso de Docker Compose, proporcionando una visión más profunda de su implementación práctica.

Requisitos previos
Copiar enlace

Antes de comenzar este tutorial, asegúrate de contar con lo siguiente:

  • Implementar una instancia de servidor cloud con Ubuntu en Hostman.

  • Disponer de una cuenta de usuario con privilegios sudo o acceso root para instalar paquetes y administrar Docker.

  • Tener Docker instalado y en ejecución en el servidor, ya que Docker Compose funciona sobre Docker Engine.

Por qué Docker Compose es importante
Copiar enlace

Las aplicaciones modernas suelen estar compuestas por múltiples componentes interconectados, como APIs, bases de datos y capas de caché. Gestionar estos elementos individualmente mediante comandos de Docker se vuelve complicado a medida que aumenta la complejidad. Docker Compose soluciona esto permitiendo declarar todos los servicios, redes y requisitos de almacenamiento en un archivo docker-compose.yml. Este enfoque garantiza la consistencia entre entornos, ya sea en una máquina Ubuntu local o en un servidor en la nube.

Por ejemplo, una aplicación web compuesta por un backend en Node.js, una base de datos PostgreSQL y una caché Redis. Sin Docker Compose, cada componente requiere un comando docker run independiente con configuraciones de red precisas. Con Compose, estas relaciones se definen una sola vez, permitiendo iniciar y detener toda la aplicación con un solo comando.

Instalación de Docker Compose
Copiar enlace

Sigue estos pasos para instalar Docker Compose en tu sistema Ubuntu.

Paso 1: Verificar que Docker esté instalado y en ejecución
Copiar enlace

Docker Compose funciona como una extensión de Docker, por lo que primero debes comprobar su estado:

sudo systemctl status docker

Si el servicio no está activo, inícialo con:

sudo systemctl start docker

Paso 2: Actualizar los paquetes del sistema
Copiar enlace

Actualiza las listas de paquetes para asegurarte de tener acceso a las versiones más recientes del software:

sudo apt-get update

Paso 3: Instalar utilidades básicas
Copiar enlace

Para una comunicación segura con los repositorios de Docker, se requieren los siguientes paquetes:

sudo apt-get install ca-certificates curl

Paso 4: Configurar la clave GPG de Docker
Copiar enlace

Autentica los paquetes de Docker añadiendo su clave criptográfica:

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

sudo chmod a+r /etc/apt/keyrings/docker.asc

Este paso garantiza que los paquetes no hayan sido modificados durante la descarga.

Paso 5: Añadir el repositorio de Docker
Copiar enlace

Agrega el repositorio correspondiente a tu versión de Ubuntu:

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

El comando detecta automáticamente la versión del sistema operativo mediante VERSION_CODENAME.

Paso 6: Instalar el plugin de Docker Compose
Copiar enlace

Actualiza los repositorios e instala la extensión Compose:

sudo apt update

sudo apt-get install docker-compose-plugin

Paso 7: Validar la instalación
Copiar enlace

Confirma que la instalación se haya realizado correctamente:

docker compose version

Salida de ejemplo:

Docker Compose version v2.33.0

Crear un proyecto práctico con Docker Compose
Copiar enlace

Para demostrar las capacidades de Docker Compose, vamos a desplegar un servidor web utilizando Nginx.

1. Inicializar el directorio del proyecto
Copiar enlace

Crea un espacio de trabajo dedicado:

mkdir ~/compose-demo && cd ~/compose-demo

2. Definir los servicios en docker-compose.yml
Copiar enlace

Crea el archivo de configuración:

nano docker-compose.yml

Inserta el siguiente contenido:

services:

  web:

    image: nginx:alpine

    ports:

      - "8080:80"

    volumes:

      - ./app:/usr/share/nginx/html

Explicación:

  • services: Elemento raíz que define los contenedores

  • web: Nombre personalizado del servicio

  • image: Imagen de Nginx basada en Alpine con menor consumo de recursos

  • ports: Mapea el puerto 8080 del host al puerto 80 del contenedor

  • volumes: Sincroniza el directorio local app con la raíz web del contenedor

3. Crear el contenido web
Copiar enlace

Construye la estructura HTML:

mkdir app

nano app/index.html

Añade el siguiente contenido:

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>Docker Compose Test</title>

</head>

<body>

  <h1>Hello from Docker Compose!</h1>

</body>

</html>

Orquestación de contenedores: del inicio al apagado
Copiar enlace

1. Iniciar los servicios en segundo plano
Copiar enlace

docker compose up -d

Docker Compose descargará automáticamente la imagen de Nginx si no está disponible y configurará la red.

2. Verificar el estado de los contenedores
Copiar enlace

docker compose ps -a

3. Acceder a la aplicación web
Copiar enlace

Abre http://localhost:8080 localmente o http://<SERVER_IP>:8080 en servidores remotos. La página de prueba debería mostrarse correctamente.

4. Diagnosticar problemas mediante logs
Copiar enlace

Si la página no carga o surgen errores, revisa los logs del contenedor:

docker compose logs web

5. Apagado y limpieza ordenados
Copiar enlace

Detener los contenedores temporalmente:

docker compose stop

Eliminar todos los recursos del proyecto:

docker compose down

Referencia de comandos: más allá de lo básico
Copiar enlace

Estos comandos amplían la gestión de contenedores:

  • docker compose up --build – Reconstruir las imágenes antes de iniciar los contenedores

  • docker compose pause – Pausar contenedores sin finalizarlos

  • docker compose top – Mostrar los procesos en ejecución dentro de los contenedores

  • docker compose config – Validar y mostrar la configuración final

  • docker compose exec – Ejecutar comandos dentro de contenedores activos
    (por ejemplo, docker compose exec web nginx -t para probar la configuración de Nginx)

Conclusión
Copiar enlace

Docker Compose transforma la orquestación de múltiples contenedores de una tarea manual y compleja en un proceso estructurado, repetible y eficiente. Siguiendo los pasos descritos—instalando Docker Compose, definiendo servicios en YAML y utilizando los comandos esenciales—podrás gestionar aplicaciones complejas con confianza.