Permítanme enumerar rápidamente los comandos con los ejemplos más comunes para su referencia rápida.
comando ps | comando contenedor | Pantallas de comandos |
dockerps | contenedor docker ls | contenedores en ejecución |
docker ps -a | contenedor docker ls -a | todos los contenedores |
docker ps -f "estado=salido" | contenedor acoplable ls -f "estado=salido" | contenedores detenidos |
docker ps-q | contenedor docker ls -q | ID de contenedores en ejecución |
docker ps -l | contenedor docker ls -l | último contenedor creado |
Como puede ver, tanto ps
y container
los comandos son idénticos a sus opciones.
Sin embargo, dado que docker quiere organizar los comandos correctamente, recomiendan usar el docker container ls
dominio.
Por esta razón, usaré docker container ls
comando en los ejemplos detallados.
Mostrar contenedores docker en ejecución
Sin ninguna opción, solo verá los contenedores en ejecución.
docker container ls
El resultado es detallado:
[email protected]:~$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f03e48cb07ea ubuntu "bash" 8 seconds ago Up 6 seconds ubuntu-c-1
93f84eb0f579 alpine "/bin/sh" 23 seconds ago Up 22 seconds alp_con2
Si es la primera vez que ve este resultado, permítame explicarle los diferentes elementos del resultado:
Container ID
- ID numérico único para identificar un contenedor
Image
- Imagen de Docker que creó el contenedor
Command
- El comando predeterminado que se ejecuta al iniciar un contenedor
Created
- Tiempo relativo en que se creó el contenedor
Status
- El estado del contenedor (se explicará más adelante)
Ports
-Puertos publicados del contenedor
Name
- Nombre del contenedor. Si no se proporciona ninguno, se asigna un nombre aleatorio de todos modos.
Lista de todos los contenedores docker
Si desea ver todos los contenedores en su sistema, use la opción -a
.
docker container ls -a
Aquí hay una salida de muestra y puede ver que ahora también muestra varios contenedores detenidos.
[email protected]:~$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f03e48cb07ea ubuntu "bash" 37 minutes ago Up 37 minutes ubuntu-c-1
93f84eb0f579 alpine "/bin/sh" 37 minutes ago Up 37 minutes alp_con2
1c1c04a84186 alpine "bash" 38 minutes ago Created alp_con
6fbc4bf4897b ubuntu "/bin/bash" 2 hours ago Exited (0) 2 hours ago fervent_hofstadter
8b9565ba7661 alpine "/bin/sh" 2 hours ago Exited (0) 2 hours ago beautiful_williamson
853e748608bc hello-world "/hello" 2 hours ago Exited (0) 2 hours ago stoic_engelbart
Mostrar solo contenedores detenidos
Si desea enumerar solo los contenedores detenidos, puede filtrar la salida en exited
estado.
docker container ls --filter "status=exited"
Aquí está la salida filtrada:
[email protected]:~$ docker container ls --filter "status=exited"
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6fbc4bf4897b ubuntu "/bin/bash" 2 hours ago Exited (0) 2 hours ago fervent_hofstadter
8b9565ba7661 alpine "/bin/sh" 2 hours ago Exited (0) 2 hours ago beautiful_williamson
853e748608bc hello-world "/hello" 2 hours ago Exited (0) 2 hours ago stoic_engelbart
El exited
El estado es para contenedores detenidos. Hay algunos estados más para los contenedores que puede usar para diferentes propósitos:
created
- Un contenedor que se ha creado pero no se ha iniciado
restarting
- Un contenedor en proceso de reinicio
running
- Un contenedor en funcionamiento
paused
- Un contenedor cuyos procesos han sido pausados
exited
- Un contenedor detenido
dead
- Un contenedor que se intentó detener pero falló
De hecho, el filtrado no se limita al estado, puede filtrar en función de otros elementos de la salida de la lista de contenedores, como la identificación, el nombre o la imagen del contenedor. El siguiente ejemplo utiliza este concepto.
Mostrar contenedores asociados a una imagen
Puede usar filtros para mostrar todos los contenedores asociados con una determinada imagen solo usando el ancestor
filtro.
docker container ls -a --filter "ancestor=image_name"
Aquí hay una salida que muestra todos los contenedores asociados con la imagen acoplable de Alpine Linux.
[email protected]:~$ docker container ls -a --filter "ancestor=alpine"
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93f84eb0f579 alpine "/bin/sh" 48 minutes ago Up 48 minutes alp_con2
1c1c04a84186 alpine "bash" 49 minutes ago Created alp_con
8b9565ba7661 alpine "/bin/sh" 2 hours ago Exited (0) 2 hours ago beautiful_williamson
Mostrar solo ID de contenedor
¿Notó que todos los comandos anteriores tienen resultados detallados en los contenedores?
Si no necesita información adicional como el nombre del contenedor, la imagen asociada, su estado, puede usar la opción silenciosa -q
.
Por ejemplo, si uso -q
En el ejemplo anterior, solo me proporciona los ID de todos los contenedores asociados con Alpine Linux.
[email protected]:~$ docker container ls -a -q --filter "ancestor=alpine"
93f84eb0f579
1c1c04a84186
8b9565ba7661
Esto resulta útil en situaciones como la eliminación de todos los contenedores de una imagen acoplable.
Bueno, eso es suficiente para este tutorial de docker. Creo que he mencionado suficientes casos de uso para listar contenedores en docker. Manténgase suscrito para obtener más tutoriales de este tipo.