Zoeken…


verschillende docker inspecteren voorbeelden

Ik vind dat de voorbeelden in de docker inspect magisch lijken, maar weinig uitleggen.

Docker inspect is belangrijk omdat het de schone manier is om informatie te extraheren uit een lopende container docker inspect -f ... container_id

(of alle lopende containers)

docker inspect -f ... $(docker ps -q)

wat onbetrouwbaar vermijden

docker command | grep or awk | tr or cut

Wanneer u een docker inspect start, kunt u de waarden van het "hoogste niveau" gemakkelijk ophalen, met een basissyntaxis zoals voor een container met htop (van https://hub.docker.com/r/jess/htop/) met een pid ae1

docker inspect -f '{{.Created}}' ae1

laten zien

2016-07-14T17:44:14.159094456Z

of

docker inspect -f '{{.Path}}' ae1

laten zien

htop

Nu als ik een deel van mijn docker inspect

ik snap het

"State": { "Status": "running", "Running": true, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 4525, "ExitCode": 0, "Error": "", "StartedAt": "2016-07-14T17:44:14.406286293Z", "FinishedAt": "0001-01-01T00:00:00Z" Dus ik krijg een woordenboek, omdat het { ...} en veel key: waarden heeft

Dus het bevel

docker inspect -f '{{.State}}' ae1

geeft een lijst terug, zoals

{running true false false false false 4525 0 2016-07-14T17:44:14.406286293Z 0001-01-01T00:00:00Z}

Ik kan gemakkelijk de waarde van State.Pid krijgen

docker inspect -f '{{ .State.Pid }}' ae1

ik krijg

4525

Soms geeft Docker Inspect een lijst als het begint met [ en eindigt met ]

een ander voorbeeld, met een andere container

docker inspect -f '{{ .Config.Env }}' 7a7

geeft

[DISPLAY=:0 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin LANG=fr_FR.UTF-8 LANGUAGE=fr_FR:en LC_ALL=fr_FR.UTF-8 DEBIAN_FRONTEND=noninteractive HOME=/home/gg WINEARCH=win32 WINEPREFIX=/home/gg/.wine_captvty]

Om het eerste element van de lijst te krijgen, voegen we index toe voor het vereiste veld en 0 (als eerste element) erna, dus

docker inspect -f '{{ index ( .Config.Env) 0 }}' 7a7

geeft

DISPLAY=:0

We krijgen het volgende element met 1 in plaats van 0 met dezelfde syntaxis

docker inspect -f '{{ index ( .Config.Env) 1 }}' 7a7

geeft

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

We kunnen het aantal elementen van deze lijst krijgen

docker inspect -f '{{ len .Config.Env }}' 7a7

geeft

9

en we kunnen het laatste element van de lijst krijgen, de syntaxis is niet eenvoudig

docker inspect -f “{{ index .Config.Cmd $[$(docker inspect –format '{{ len .Config.Cmd }}' $CID)-1]}}” 7a7



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow