Listar todas las pilas (stacks)
En este paso, aprenderá cómo listar todas las pilas (stacks) de Docker que se están ejecutando en su sistema. Una pila (stack) de Docker es una colección de servicios que se despliegan juntos. Antes de poder listar las pilas (stacks), necesitamos instalar Docker Compose, que se utiliza para definir y ejecutar aplicaciones de Docker de múltiples contenedores.
Primero, instalemos Docker Compose. Descargaremos el binario de Docker Compose y lo haremos ejecutable.
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
El primer comando descarga el binario de Docker Compose del repositorio oficial de GitHub. $(uname -s)
y $(uname -m)
se utilizan para obtener el sistema operativo y la arquitectura de su máquina, asegurando que descargue el binario correcto. El segundo comando hace que el archivo descargado sea ejecutable.
Ahora que Docker Compose está instalado, verifiquemos la instalación comprobando la versión.
docker-compose --version
Debería ver la versión de Docker Compose instalada en la salida.
Para demostrar cómo listar las pilas (stacks), necesitamos desplegar una pila (stack) simple. Crearemos un archivo docker-compose.yml
que defina un servicio web simple.
nano ~/project/docker-compose.yml
Pegue el siguiente contenido en el archivo docker-compose.yml
:
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "80:80"
Este archivo docker-compose.yml
define un solo servicio llamado web
que utiliza la imagen nginx:latest
y mapea el puerto 80 del host al puerto 80 del contenedor.
Ahora, despleguemos esta pila (stack) utilizando el comando docker stack deploy
. Nombraremos nuestra pila (stack) mywebstack
.
docker stack deploy -c ~/project/docker-compose.yml mywebstack
La bandera -c
especifica el archivo Compose a utilizar, y mywebstack
es el nombre que le estamos dando a nuestra pila (stack). Verá una salida que indica que los servicios se están creando y desplegando.
Después de desplegar la pila (stack), puede listar todas las pilas (stacks) en ejecución utilizando el comando docker stack ls
.
docker stack ls
Este comando mostrará una lista de todas las pilas (stacks) desplegadas, incluyendo el nombre de la pila (stack), el número de servicios y el número deseado y actual de réplicas para cada servicio. Debería ver mywebstack
en la lista de la salida.