Inicio > Otros paquetes externos > docker compose

Guía de comandos de Docker Compose

Docker Compose es una herramienta para definir y ejecutar aplicaciones Docker de múltiples contenedores. Utilizando un archivo YAML, puede configurar los servicios de su aplicación y iniciar todos los servicios con un solo comando. Esto facilita la gestión de entornos de aplicaciones complejos.

Instalación de Docker Compose

Docker Compose generalmente se incluye con Docker Desktop o se puede instalar por separado. A continuación se explica cómo instalar el complemento CLI de Docker Compose en un entorno Linux.

Instalación del complemento CLI de Docker Compose en Linux

Instale el complemento CLI de Docker Compose más reciente descargándolo y otorgándole permisos de ejecución. Utilice este método para instalar Docker Compose si no está utilizando Docker Desktop.

Descargar e instalar el complemento de Docker Compose

sudo curl -SL https://github.com/docker/compose/releases/latest/download/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Descargue la última versión del complemento CLI de Docker Compose, otorgue permisos de ejecución y colóquelo en la ruta adecuada.

Comprobar la versión de Docker Compose

docker compose version

Verifique la versión de Docker Compose para confirmar que la instalación se ha completado.

Comandos clave de Docker Compose

Docker Compose se utiliza para gestionar los servicios definidos en un archivo `docker-compose.yml`. Controle fácilmente las aplicaciones de múltiples contenedores con las siguientes opciones.

1. Creación y ejecución de aplicaciones

2. Detener y eliminar aplicaciones

3. Gestión de servicios

Comando generado:

Combina los comandos.

Descripción:

`docker compose` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Estructura del archivo `docker-compose.yml`

Docker Compose utiliza un archivo `docker-compose.yml` para definir servicios, redes, volúmenes y más. Este archivo está escrito en formato YAML y representa claramente los componentes de la aplicación y sus relaciones.

Estructura básica

El archivo `docker-compose.yml` tiene claves de nivel superior como `version`, `services`, `networks` y `volumes`. La parte más importante es la sección `services`, que define cada contenedor que compone la aplicación.

Ejemplo de aplicación web sencilla

version: '3.8'
services:
  web:
    image: nginx:latest
    ports:
      - '80:80'
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
    depends_on:
      - api
  api:
    build: .
    ports:
      - '3000:3000'
    environment:
      NODE_ENV: production
volumes:
  data_volume:

Un ejemplo de `docker-compose.yml` para una aplicación sencilla que consta de un servidor web Nginx y un servicio de back-end de Node.js.

Explicación de las claves

Explicaciones de las configuraciones clave que se usan con frecuencia en el archivo `docker-compose.yml`.

  • version: Especifica la versión del formato del archivo de Compose. Se recomienda usar la versión más reciente (por ejemplo, '3.8').
  • services: Esta sección define cada servicio de contenedor que compone la aplicación.
  • image: Especifica el nombre de la imagen de Docker que se utilizará para el servicio. (por ejemplo, `nginx:latest`)
  • build: Especifica la ruta al Dockerfile para crear la imagen. (por ejemplo, `.`)
  • ports: Define las asignaciones de puertos entre el host y el contenedor. (por ejemplo, `- '80:80'`)
  • volumes: Define los montajes de volúmenes para la persistencia de datos. (por ejemplo, `- ./data:/app/data`)
  • environment: Define las variables de entorno que se establecerán dentro del contenedor.
  • depends_on: Define las dependencias entre servicios. (por ejemplo, cuando el servicio `db` debe iniciarse antes que el servicio `web`)
  • networks: Define las redes a las que se conectará el servicio.

Ejemplos de uso

Aprenda a administrar eficientemente las aplicaciones de múltiples contenedores a través de ejemplos de uso prácticos de los comandos de Docker Compose.

Iniciar un proyecto de Docker Compose (en segundo plano)

docker compose up -d

Lee el archivo `docker-compose.yml` en el directorio actual e inicia todos los servicios en segundo plano.

Reiniciar un servicio específico

docker compose restart web

Reinicia solo el servicio 'web' definido en `docker-compose.yml`.

Ver registros en tiempo real

docker compose logs -f

Transmite los registros de todos los servicios al terminal en tiempo real para supervisar el comportamiento de la aplicación.

Detener la aplicación y eliminar los recursos relacionados

docker compose down -v

Detiene y elimina todos los contenedores de servicio en ejecución, y también elimina las redes definidas y los volúmenes anónimos.

Especificar la ruta al archivo de Docker Compose

docker compose -f /path/to/my-app/docker-compose.prod.yml up -d

Ejecuta un archivo de Compose con un nombre diferente o ubicado en una ruta diferente en lugar del `docker-compose.yml` predeterminado.


Comandos de la misma categoría