Cómo instalar Docker Compose: Linux, macOS y Windows
Guía práctica para instalar Docker Compose v2 en Linux, macOS y Windows: métodos con gestor de paquetes y manuales, verificación, actualizaciones y solución de errores comunes.
¿Tienes Docker en marcha y dominas los comandos básicos, pero te cansa iniciar los contenedores uno a uno?
Docker Compose es una herramienta que te permite definir y ejecutar aplicaciones con varios contenedores desde un único archivo YAML. La parte confusa es que circulan dos versiones: el binario independiente antiguo (v1) y el nuevo complemento de la CLI (v2). Muchos tutoriales no especifican cuál usan, así que terminas siguiendo pasos que no encajan con tu entorno.
Docker Compose v2 es un plugin incluido en las instalaciones modernas de Docker, lo que simplifica mucho la instalación, ejecución y verificación. El proceso ya no es tan manual como antes.
En este artículo, te explico cómo instalar Docker Compose en Linux, macOS y Windows de la forma correcta, usando v2.
¿Eres nuevo en los conceptos de virtualización y contenedores? Lee nuestro recienteDocker para principiantes para practicar desde el primer minuto.
Antes de instalar Docker Compose
Antes de nada, necesitas Docker Engine en tu equipo. Docker Compose no funciona por sí solo: necesita Docker.
Ejecuta este comando para comprobar tu versión de Docker:
Si devuelve un número de versión, listo: Compose v2 ya viene incluido con tu instalación de Docker. Puedes saltar directamente a la sección de verificación.
Si en su lugar ves un mensaje genérico de comando no encontrado, sigue leyendo.
Esta es la diferencia clave que debes conocer:
Docker Compose v1 es el binario independiente legado. Se invocaba con docker-compose (con guion). Está obsoleto y ya no se mantiene.
Docker Compose v2 es un plugin de la CLI que se distribuye con Docker moderno. Se invoca con docker compose (sin guion).
Si usas una instalación reciente de Docker, casi seguro que ya tienes v2. El resto del artículo asume v2.
Instalar Docker Compose en Linux
En Linux, tienes dos formas de obtener Docker Compose. La primera usa el repositorio oficial de Docker: es la opción recomendada. La segunda es una instalación manual útil cuando no puedes usar un gestor de paquetes o necesitas una versión específica.
Método 1: usar el repositorio oficial de Docker (recomendado)
Este método mantiene Compose ligado a tu instalación de Docker, así que las actualizaciones quedan sincronizadas.
Si aún no tienes Docker Engine, primero configura el repositorio apt oficial de Docker:
# Añade la clave GPG de Dockersudoapt-get update
sudoapt-getinstall ca-certificates curlsudoinstall-m 0755 -d /etc/apt/keyrings
sudocurl-fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudochmod a+r /etc/apt/keyrings/docker.asc
# Añade el repositorioecho\"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"|\sudotee /etc/apt/sources.list.d/docker.list > /dev/null
sudoapt-get updateCon la tecnología de
Ahora instala Docker Engine y el plugin de Compose juntos:
sudoapt-getinstall docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginCon la tecnología de
El paquete docker-compose-plugin es el que te da docker compose como comando de la CLI. Verifica que funciona:
Usa este método cuando necesites una versión concreta de Compose o cuando tu entorno no permita usar el repositorio de Docker.
Empieza descargando la última versión directamente desde GitHub. Sustituye v5.0.1 por la versión que necesites:
DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}mkdir-p$DOCKER_CONFIG/cli-plugins
curl-SL https://github.com/docker/compose/releases/download/v5.0.1/docker-compose-linux-x86_64 -o$DOCKER_CONFIG/cli-plugins/docker-composeCon la tecnología de
Solo recuerda que las instalaciones manuales no se actualizan automáticamente. Si instalas un binario y te olvidas, podrías estar usando una versión obsoleta con fallos conocidos o problemas de seguridad. Si optas por este camino, acostúmbrate a revisar de vez en cuando la página de lanzamientos de Docker Compose.
Instalar Docker Compose en macOS
En macOS, no necesitas instalar Docker Compose por separado: viene incluido en Docker Desktop.
Descarga Docker Desktop desde el sitio oficial de Docker. Asegúrate de elegir la versión adecuada para tu chip: Apple Silicon (M1-M5) o Intel.
Una vez instalado, abre Docker Desktop y deja que termine de arrancar. Luego verifica que Compose está disponible con este comando:
Si eliges esta opción, recuerda que Homebrew instala Docker Engine sin la app de Desktop. Perfecto para uso por CLI, pero perderás funciones como el panel de Docker y las actualizaciones automáticas. Para la mayoría en macOS, Docker Desktop es el camino más sencillo.
Instalar Docker Compose en Windows
Igual que en macOS, en Windows Docker Compose llega automáticamente con Docker Desktop. No hace falta una instalación aparte.
Antes de instalar Docker Desktop, necesitas tener habilitado WSL2 (Windows Subsystem for Linux 2). WSL2 permite que Docker ejecute un kernel Linux real en Windows, que es cómo funcionan los contenedores en esta plataforma. Para habilitarlo, abre PowerShell como administrador y ejecuta:
Reinicia el equipo cuando se te solicite. Después descarga e instala Docker Desktop desde el sitio oficial de Docker.
Durante la configuración, asegúrate de marcar la opción "Use WSL2 instead of Hyper-V". Cuando Docker Desktop esté en ejecución, verifica que Compose está disponible; puedes hacerlo en PowerShell o en tu terminal de WSL:
Si ves un error de "permission denied", suele deberse a una de estas dos causas:
Docker Desktop no está en ejecución. Debe estar activo en la bandeja del sistema antes de que cualquier comando docker funcione.
Tu usuario no está en el grupo correcto. En WSL, asegúrate de que tu usuario de Linux tiene acceso al socket de Docker. Puedes arreglarlo ejecutando tu terminal de WSL como administrador o añadiendo tu usuario al grupo docker dentro de WSL:
Si devuelve una versión 1.x.x, estás usando el binario antiguo. Desinstálalo y usa docker compose a partir de ahora. Los comandos son casi idénticos, pero v2 es más rápido y se mantiene activamente.
Actualizar Docker Compose
Cómo actualizar Compose depende de cómo lo instalaste.
En macOS y Windows, Docker Desktop se encarga de todo: abre la app, ve a Settings > Software Updates y deja que actualice si es necesario. Compose se actualiza automáticamente junto con Docker.
En Linux con el gestor de paquetes, ejecuta lo siguiente:
sudoapt-get update
sudoapt-get upgrade docker-compose-pluginCon la tecnología de
Así obtendrás la última versión desde el repositorio oficial de Docker.
Si lo instalaste manualmente, tendrás que repetir la descarga con el nuevo número de versión. Consulta la página de lanzamientos de Docker Compose para ver la última versión y, después, sustituye el binario:
curl-SL https://github.com/docker/compose/releases/download/v5.0.2/docker-compose-linux-x86_64 -o$DOCKER_CONFIG/cli-plugins/docker-compose
chmod +x $DOCKER_CONFIG/cli-plugins/docker-composeCon la tecnología de
Tras cualquier actualización, verifica que la nueva versión está activa:
Cierra sesión y vuelve a entrar para que el cambio se aplique. En Docker Desktop (macOS/Windows), asegúrate de que la app esté realmente en ejecución antes de probar comandos.
Incompatibilidad de versiones
Si Compose se comporta de forma extraña, comprueba qué versión estás ejecutando:
Si estás en una versión antigua, sigue los pasos de actualización de la sección anterior. Si tienes v1 y v2 instalados a la vez, probablemente de ahí venga la confusión.
Conflictos entre v1 y v2
Tener docker-compose (v1) y docker compose (v2) en la misma máquina puede generar conflictos. Comprueba si v1 sigue presente con este comando:
Si Docker está instalado pero no se encuentran los comandos, puede que el directorio de plugins de la CLI no esté en tu PATH. Comprueba dónde está el binario de Compose:
Si llevas tiempo usando Docker, seguramente hayas visto docker-compose y docker compose en artículos y vídeos. No son lo mismo.
Docker Compose v1 era un binario en Python independiente que se instalaba por separado de Docker. Usaba el comando docker-compose (con guion). Docker lo declaró obsoleto en 2023 y ya no se mantiene ni se actualiza.
Docker Compose v2 es un plugin de la CLI, escrito en Go e integrado directamente en la CLI de Docker. Se invoca con docker compose (sin guion). Viene con Docker Engine y Docker Desktop, así que en entornos modernos no hay nada extra que instalar.
La sintaxis de comandos es casi idéntica entre ambas versiones: la mayoría de los comandos de docker-compose funcionan igual con docker compose. Las principales diferencias están bajo el capó: v2 es más rápido, se integra mejor con las herramientas de Docker y se mantiene activamente.
Aquí tienes una comparación:
Tabla comparativa de Compose v1 y v2
En 2026, quédate con v2. Si tus scripts o pipelines de CI aún usan docker-compose, sustituye el guion por un espacio: ese será el único cambio necesario en la mayoría de flujos.
Conclusión
Si usas una instalación moderna de Docker, ya tienes Compose v2 instalado. No hacen falta pasos extra. En macOS y Windows, la aplicación Docker Desktop incluye Compose. Si usas Linux, lo gestiona el paquete docker-compose-plugin.
Antes de escribir o ejecutar archivos de Compose, ejecuta docker compose version para confirmar que todo está en su sitio.
Si aún usas Compose v1, es momento de cambiar. Quita el guion y elimina el binario antiguo: eso es todo. Todos tus archivos de Compose actuales funcionarán tal cual con v2.
¿Buscas más recursos sobre Docker? Apúntate a nuestro cursoIntroduction to Docker para aprender sobre contenedores, imágenes y mucho más.
Científico de Datos Senior con base en Croacia. Top Tech Writer con más de 700 artículos publicados, generando más de 10M de visitas. Autor del libro Automatización del aprendizaje automático con TPOT.
FAQs
¿Para qué se usa Docker Compose?⌄
Docker Compose te permite definir y ejecutar aplicaciones con varios contenedores desde un único archivo YAML. En lugar de iniciar cada contenedor manualmente con comandos docker run por separado, describes toda tu configuración en un único archivo docker-compose.yml y lo levantas todo con docker compose up.
¿Necesito instalar Docker antes que Docker Compose?⌄
Sí. Docker Compose es un plugin que se ejecuta sobre Docker Engine: no funciona sin él. Ejecuta docker --version para confirmar que Docker está instalado antes de intentar cualquier paso de instalación de Compose.
¿Docker Compose es gratuito?⌄
Docker Compose en sí es de código abierto y gratuito. Docker Desktop, que incluye Compose en macOS y Windows, también es gratuito para uso personal y equipos pequeños. Las organizaciones más grandes pueden necesitar una suscripción de pago a Docker según su caso de uso.
¿Cuál es la diferencia entre docker compose y docker-compose?⌄
docker compose (sin guion) es el plugin de la CLI v2 incluido en instalaciones modernas de Docker. docker-compose (con guion) es el binario independiente v1 que Docker declaró obsoleto en 2023. La sintaxis es casi idéntica, pero v1 ya no se mantiene: deberías usar v2 en adelante.
¿Por qué `docker compose version` devuelve "command not found" incluso después de instalar?⌄
Esto suele significar que el plugin de Compose no se instaló correctamente o que el directorio de plugins de la CLI no está en tu PATH. En Linux, confirma que el plugin está instalado con sudo apt-get install docker-compose-plugin. Si está instalado pero sigue sin encontrarse, comprueba que $DOCKER_CONFIG/cli-plugins está en tu PATH y recarga la configuración de tu shell.
Aprende a instalar Python en tu equipo personal con este tutorial paso a paso. Tanto si eres usuario de Windows como de macOS, descubre varios métodos para iniciarte en Python en tu equipo.
Aprende a instalar y configurar la base de datos MySQL dentro de contenedores Docker. El tutorial incluye conceptos como conectarse a servidores MySQL, ejecutar clientes MySQL para conectarse a contenedores, etc.
¿Tienes Docker en marcha y dominas los comandos básicos, pero te cansa iniciar los contenedores uno a uno?
Docker Compose es una herramienta que te permite definir y ejecutar aplicaciones con varios contenedores desde un único archivo YAML. La parte confusa es que circulan dos versiones: el binario independiente antiguo (v1) y el nuevo complemento de la CLI (v2). Muchos tutoriales no especifican cuál usan, así que terminas siguiendo pasos que no encajan con tu entorno.
Docker Compose v2 es un plugin incluido en las instalaciones modernas de Docker, lo que simplifica mucho la instalación, ejecución y verificación. El proceso ya no es tan manual como antes.
En este artículo, te explico cómo instalar Docker Compose en Linux, macOS y Windows de la forma correcta, usando v2.
¿Eres nuevo en los conceptos de virtualización y contenedores? Lee nuestro reciente Docker para principiantes para practicar desde el primer minuto.
Antes de instalar Docker Compose
Antes de nada, necesitas Docker Engine en tu equipo. Docker Compose no funciona por sí solo: necesita Docker.
Ejecuta este comando para comprobar tu versión de Docker:
Versión de Docker instalada
Si Docker no está instalado, detente aquí e instálalo primero. Si ya lo tienes, comprueba si Compose está disponible:
Versión de Docker Compose instalada
Si devuelve un número de versión, listo: Compose v2 ya viene incluido con tu instalación de Docker. Puedes saltar directamente a la sección de verificación.
Si en su lugar ves un mensaje genérico de comando no encontrado, sigue leyendo.
Esta es la diferencia clave que debes conocer:
Docker Compose v1 es el binario independiente legado. Se invocaba con
docker-compose(con guion). Está obsoleto y ya no se mantiene.Docker Compose v2 es un plugin de la CLI que se distribuye con Docker moderno. Se invoca con
docker compose(sin guion).Si usas una instalación reciente de Docker, casi seguro que ya tienes v2. El resto del artículo asume v2.
Instalar Docker Compose en Linux
En Linux, tienes dos formas de obtener Docker Compose. La primera usa el repositorio oficial de Docker: es la opción recomendada. La segunda es una instalación manual útil cuando no puedes usar un gestor de paquetes o necesitas una versión específica.
Método 1: usar el repositorio oficial de Docker (recomendado)
Este método mantiene Compose ligado a tu instalación de Docker, así que las actualizaciones quedan sincronizadas.
Si aún no tienes Docker Engine, primero configura el repositorio
aptoficial de Docker:Ahora instala Docker Engine y el plugin de Compose juntos:
El paquete
docker-compose-plugines el que te dadocker composecomo comando de la CLI. Verifica que funciona:Versión de Docker Compose en una VM de Ubuntu
Eso es todo.
Método 2: instalación manual (binario independiente)
Usa este método cuando necesites una versión concreta de Compose o cuando tu entorno no permita usar el repositorio de Docker.
Empieza descargando la última versión directamente desde GitHub. Sustituye
v5.0.1por la versión que necesites:Haz el binario ejecutable:
Y por último, verifica la instalación:
Versión de Docker Compose en una VM de Ubuntu
Solo recuerda que las instalaciones manuales no se actualizan automáticamente. Si instalas un binario y te olvidas, podrías estar usando una versión obsoleta con fallos conocidos o problemas de seguridad. Si optas por este camino, acostúmbrate a revisar de vez en cuando la página de lanzamientos de Docker Compose.
Instalar Docker Compose en macOS
En macOS, no necesitas instalar Docker Compose por separado: viene incluido en Docker Desktop.
Descarga Docker Desktop desde el sitio oficial de Docker. Asegúrate de elegir la versión adecuada para tu chip: Apple Silicon (M1-M5) o Intel.
Una vez instalado, abre Docker Desktop y deja que termine de arrancar. Luego verifica que Compose está disponible con este comando:
Versión de Docker Compose en macOS
Listo. Compose v2 está preparado para usarse.
Opcional: instalación con Homebrew
Si prefieres gestionar tus herramientas con Homebrew y no quieres la interfaz de Docker Desktop, puedes instalar Docker y Compose con Homebrew:
Si eliges esta opción, recuerda que Homebrew instala Docker Engine sin la app de Desktop. Perfecto para uso por CLI, pero perderás funciones como el panel de Docker y las actualizaciones automáticas. Para la mayoría en macOS, Docker Desktop es el camino más sencillo.
Instalar Docker Compose en Windows
Igual que en macOS, en Windows Docker Compose llega automáticamente con Docker Desktop. No hace falta una instalación aparte.
Antes de instalar Docker Desktop, necesitas tener habilitado WSL2 (Windows Subsystem for Linux 2). WSL2 permite que Docker ejecute un kernel Linux real en Windows, que es cómo funcionan los contenedores en esta plataforma. Para habilitarlo, abre PowerShell como administrador y ejecuta:
Reinicia el equipo cuando se te solicite. Después descarga e instala Docker Desktop desde el sitio oficial de Docker.
Durante la configuración, asegúrate de marcar la opción "Use WSL2 instead of Hyper-V". Cuando Docker Desktop esté en ejecución, verifica que Compose está disponible; puedes hacerlo en PowerShell o en tu terminal de WSL:
Problemas de permisos habituales
Si ves un error de "permission denied", suele deberse a una de estas dos causas:
dockerfuncione.dockerdentro de WSL:Ahora solo cierra sesión y vuelve a iniciarla en WSL para que el cambio surta efecto.
Verificar la instalación de Docker Compose
Una vez que hayas instalado Docker Compose, ejecuta este comando para confirmar que todo funciona:
Deberías ver una salida similar a esta:
Versión de Compose instalada
El número exacto variará según la fecha en que leas esto, pero mientras veas
v5.0.1o superior, vas bien.Si ves
docker compose: command not found, Compose no está instalado o no está en tu PATH. Salta a la sección de resolución de problemas.docker compose vs docker-compose
Quizá veas artículos que usan
docker-composecon guion. Esta es la diferencia:docker-composees el comando v1 legado. Era un binario en Python independiente, instalado aparte de Docker.docker compose(sin guion) es el plugin de la CLI v2, integrado directamente en la CLI de Docker.Docker retiró el soporte de v1 en 2023, así que
docker-composeya no se mantiene. Si aún lo tienes instalado, puedes comprobar a qué versión apunta:Si devuelve una versión
1.x.x, estás usando el binario antiguo. Desinstálalo y usadocker composea partir de ahora. Los comandos son casi idénticos, pero v2 es más rápido y se mantiene activamente.Actualizar Docker Compose
Cómo actualizar Compose depende de cómo lo instalaste.
En macOS y Windows, Docker Desktop se encarga de todo: abre la app, ve a Settings > Software Updates y deja que actualice si es necesario. Compose se actualiza automáticamente junto con Docker.
En Linux con el gestor de paquetes, ejecuta lo siguiente:
Así obtendrás la última versión desde el repositorio oficial de Docker.
Si lo instalaste manualmente, tendrás que repetir la descarga con el nuevo número de versión. Consulta la página de lanzamientos de Docker Compose para ver la última versión y, después, sustituye el binario:
Tras cualquier actualización, verifica que la nueva versión está activa:
No tiene más misterio.
Desinstalar Docker Compose
Los pasos de desinstalación dependen de cómo instalaste Compose inicialmente.
Si lo instalaste con el gestor de paquetes en Linux, elimina el plugin con este comando:
Si lo instalaste manualmente, simplemente borra el binario:
Si aún tienes en el sistema el binario v1 antiguo, localízalo y elimínalo con este comando:
Después de eliminar, comprueba que se ha ido ejecutando
docker compose version. Si el comando devuelve un error, la desinstalación se ha completado.Problemas de instalación comunes
Instalar y desinstalar Docker Compose es sencillo, pero aún así puede haber contratiempos. Así puedes solucionar los problemas más habituales.
"docker compose: command not found"
Esto significa que Compose no está instalado o Docker no lo encuentra. Primero, confirma que Docker está en ejecución:
Si Docker está bien pero falta Compose, reinstala el plugin:
Errores de permisos
Si ves un error de permisos al ejecutar
docker compose, probablemente tu usuario no tiene acceso al socket de Docker. Añádete al grupodocker:Cierra sesión y vuelve a entrar para que el cambio se aplique. En Docker Desktop (macOS/Windows), asegúrate de que la app esté realmente en ejecución antes de probar comandos.
Incompatibilidad de versiones
Si Compose se comporta de forma extraña, comprueba qué versión estás ejecutando:
Si estás en una versión antigua, sigue los pasos de actualización de la sección anterior. Si tienes v1 y v2 instalados a la vez, probablemente de ahí venga la confusión.
Conflictos entre v1 y v2
Tener
docker-compose(v1) ydocker compose(v2) en la misma máquina puede generar conflictos. Comprueba si v1 sigue presente con este comando:Si devuelve una ruta, elimínalo:
En adelante, usa
docker compose(sin guion).Problemas con el PATH
Si Docker está instalado pero no se encuentran los comandos, puede que el directorio de plugins de la CLI no esté en tu PATH. Comprueba dónde está el binario de Compose:
Si está ahí pero no funciona, añade el directorio a tu PATH en
~/.bashrco~/.zshrc:Luego recarga tu shell ejecutando esto:
Docker Compose v1 vs. v2
Si llevas tiempo usando Docker, seguramente hayas visto
docker-composeydocker composeen artículos y vídeos. No son lo mismo.Docker Compose v1 era un binario en Python independiente que se instalaba por separado de Docker. Usaba el comando
docker-compose(con guion). Docker lo declaró obsoleto en 2023 y ya no se mantiene ni se actualiza.Docker Compose v2 es un plugin de la CLI, escrito en Go e integrado directamente en la CLI de Docker. Se invoca con
docker compose(sin guion). Viene con Docker Engine y Docker Desktop, así que en entornos modernos no hay nada extra que instalar.La sintaxis de comandos es casi idéntica entre ambas versiones: la mayoría de los comandos de
docker-composefuncionan igual condocker compose. Las principales diferencias están bajo el capó: v2 es más rápido, se integra mejor con las herramientas de Docker y se mantiene activamente.Aquí tienes una comparación:
Tabla comparativa de Compose v1 y v2
En 2026, quédate con v2. Si tus scripts o pipelines de CI aún usan
docker-compose, sustituye el guion por un espacio: ese será el único cambio necesario en la mayoría de flujos.Conclusión
Si usas una instalación moderna de Docker, ya tienes Compose v2 instalado. No hacen falta pasos extra. En macOS y Windows, la aplicación Docker Desktop incluye Compose. Si usas Linux, lo gestiona el paquete
docker-compose-plugin.Antes de escribir o ejecutar archivos de Compose, ejecuta
docker compose versionpara confirmar que todo está en su sitio.Si aún usas Compose v1, es momento de cambiar. Quita el guion y elimina el binario antiguo: eso es todo. Todos tus archivos de Compose actuales funcionarán tal cual con v2.
¿Buscas más recursos sobre Docker? Apúntate a nuestro curso Introduction to Docker para aprender sobre contenedores, imágenes y mucho más.