Voglio fare un comando ps in un contenitore docker derivato dal repository dell'hub Docker ufficiale Debian:
$ docker run -ti debian:wheezy /bin/bash
root@51afd6b09af8:/# ps
bash: ps: command not found
Voglio fare un comando ps in un contenitore docker derivato dal repository dell'hub Docker ufficiale Debian:
$ docker run -ti debian:wheezy /bin/bash
root@51afd6b09af8:/# ps
bash: ps: command not found
Risposte:
ps
non è installato wheezy
nell'immagine di base . Prova questo dal contenitore:
RUN apt-get update && apt-get install -y procps
ps
nell'immagine wheezy:https://github.com/moby/moby/issues/447#issuecomment-36647268
usa la finestra mobile
docker top <container ID>
Nel caso in cui non sia possibile installare il pacchetto procps (non disponga delle autorizzazioni appropriate) è possibile utilizzare la directory / proc.
Le prime directory (denominate come numeri) sono PID dei processi. All'interno delle directory, è possibile trovare informazioni aggiuntive utili per decifrare quale processo è collegato a ciascun PID. Ad esempio, è possibile utilizzare il comando cat per visualizzare il file "cmdline" per verificare quale processo è collegato al PID.
$ ls /proc
1 10 11 ...
$ ls -1 /proc/22
attr
autogroup
auxv
cgroup
clear_refs
cmdline
...
$ cat /proc/22/cmdline
/bin/sh
Innanzitutto, esegui il comando seguente:
apt-get update && apt-get install procps
e poi esegui:
ps -ef
apt-get install -y procps
invece.