GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Docker

Shell:Prüfen, ob Docker-Container vorhanden ist?

Wie überprüfe ich in einem Bash-Skript, ob dies

sudo docker images -q nginx

gibt mir eine Ergebniszeichenfolge, was bedeutet, dass dieser Container existiert

sudo docker images -q nginx
if [ $? != '' ]
then
    echo "existing"
else
    echo "missing

Akzeptierte Antwort:

$? ist kein String, sondern der Exit-Status von sudo (in diesem Fall). Um das richtig zu verwenden, vergleichen Sie es mit -gt mit Null , oder verwenden Sie if (( $? )) (in einer Shell wie bash oder ksh93 die arithmetische Auswertung mit (( ... )) durchführt ).

Wenn sudo docker images -q nginx gibt Ihnen einen String, wenn der Container existiert und nichts, wenn nicht, dann können Sie das in einer Variablen speichern und sehen, ob es leer ist oder nicht:

result=$( sudo docker images -q nginx )

if [[ -n "$result" ]]; then
  echo "Container exists"
else
  echo "No such container"
fi

Docker
  1. Einige DOCKER-Befehle

  2. Eine Einführung in Docker

  3. So führen Sie MySQL in einem Docker-Container aus

  4. So installieren Sie Vim in einem Docker-Container

  5. So listen Sie Docker-Container auf

So führen Sie PHPMyAdmin in einem Docker-Container aus

So führen Sie Grafana in einem Docker-Container aus

So fügen Sie einem vorhandenen Docker-Container ein Volume hinzu

So richten Sie einen Apache Docker-Container ein

So führen Sie Docker-Container aus

Was tun, wenn ein Docker-Container sofort beendet wird