El comando ps no funciona en el contenedor acoplable


208

Quiero hacer un comando ps en un contenedor docker derivado del repositorio oficial Docker Hub de Debian:

$ docker run -ti debian:wheezy /bin/bash
root@51afd6b09af8:/# ps
bash: ps: command not found

Respuestas:


366

psno está instalado en la wheezyimagen base . Prueba esto desde dentro del contenedor:

RUN apt-get update && apt-get install -y procps

8
Si obtiene este error "El comando '/ bin / sh -c apt-get install procps' devolvió un código distinto de cero: 1" y luego use apt-get install -y procpsen su lugar.
fwc

Aquí está la URL que se discutió en 2014 de no incluir psen la imagen wheezy:https://github.com/moby/moby/issues/447#issuecomment-36647268
truthadjustr

EJECUTAR apt-get update && apt-get install -y procps && rm -rf / var / lib / apt / lists / *
Zhuo YING

¿Dónde se debe agregar? Creo en el archivo .yml al crear su imagen acoplable?
Yaro

14

use la parte superior de la ventana acoplable

docker top <container ID>

6

En caso de que no pueda instalar el paquete procps (no tiene los permisos adecuados) puede usar el directorio / proc.

Los primeros directorios (nombrados como números) son PID de sus procesos. Dentro de los directorios, puede encontrar información adicional útil para descifrar qué proceso está conectado a cada PID. Por ejemplo, puede usar el comando cat para ver el archivo "cmdline" para verificar qué proceso está conectado al PID.

$ ls /proc
1 10 11 ...

$ ls -1 /proc/22
attr
autogroup
auxv
cgroup
clear_refs
cmdline
...

$ cat /proc/22/cmdline 
/bin/sh

Si bien no es tan conveniente, esta parece ser la respuesta más adecuada.
Jairo Martin

1

En primer lugar, ejecute el siguiente comando:

apt-get update && apt-get install procps

y luego ejecuta:

ps -ef
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.