607 Stimmen

Der Befehl ps funktioniert nicht im Docker-Container

Ich möchte einen ps-Befehl in einem Docker-Container ausführen, der vom offiziellen Docker-Hub-Repository von Debian abgeleitet ist:

$ docker run -ti debian:wheezy /bin/bash
root@51afd6b09af8:/# ps
bash: ps: Befehl nicht gefunden

999voto

user2105103 Punkte 12369

ps ist nicht im Basis-wheezy-Image installiert. Versuchen Sie dies innerhalb des Containers:

apt-get update && apt-get install procps

oder fügen Sie die folgende Zeile zur Dockerfile hinzu:

RUN apt-get update && apt-get install -y procps && rm -rf /var/lib/apt/lists/*

161voto

es cologne Punkte 2658

Verwenden Sie docker top

docker top

112voto

Vedran Vidovic Punkte 1261

Falls Sie das Paket procps nicht installieren können (keine ausreichenden Berechtigungen haben), können Sie das /proc Verzeichnis verwenden.

Die ersten paar Verzeichnisse (benannt als Zahlen) sind PIDs Ihrer Prozesse. Innerhalb der Verzeichnisse können Sie zusätzliche Informationen finden, die hilfreich sind, um zu entschlüsseln, welcher Prozess mit welcher PID verbunden ist. Sie können zum Beispiel den cat Befehl verwenden, um die "cmdline" Datei anzuzeigen und zu überprüfen, welcher Prozess mit der PID verbunden ist.

$ ls /proc
1 10 11 ...

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

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

Bearbeitet - Leerzeichen gehen in der cmdline verloren, daher können wir die Ausgabe von cat an den tr Befehl weiterleiten, zum Beispiel:

$ cat /proc/1/cmdline | tr '\0' ' '
/sbin/init splash

24voto

Duff Ganther Punkte 401

Wenn Sie einen CentOS-Container ausführen, können Sie mit diesem Befehl ps installieren:

yum install -y procps

Führen Sie diesen Befehl auf Dockerfile aus:

RUN yum install -y procps

19voto

harun ugur Punkte 1483

Zunächst führen Sie den folgenden Befehl aus:

apt-get update && apt-get install procps

und dann führen Sie aus:

ps -ef

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X