Si j'ai exécuté sudo doccker ps
, j'ai obtenu ce
[user@vm1 ~]$ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e8ff73dec1d5 portal-mhn:latest "nginx -g 'daemon ofâ¦" 43 minutes ago Up 43 minutes portal-mhn_portal-mhn.1.4rsfv94wy97gb333q3kfyxz32 62a7cf09d7bf portal-admin:latest "nginx -g 'daemon ofâ¦" 43 minutes ago Up 43 minutes portal-admin_portal-admin.1.s62iep4gl5g5oj2hrap14kz1t
J'essaie de récupérer la base d'ID de conteneur sur ImageName.
Ex. Est-il possible de récupérer l'identifiant du conteneur de portal-mhn: latest via une ligne de commande? qui est e8ff73dec1d5
3 Réponses :
Si vous souhaitez obtenir l'ID du conteneur en fonction du nom de l'image, cela devrait fonctionner:
$ docker ps -aqf "ancestor=<image_name>"
Ou même:
$ docker ps | awk ' /<image_name>/ { print $1 }'
Comme d'autres ont suggéré que vous pouvez également filtrer directement par le nom de l'image en utilisant le filtre ancêtre
:
$ docker ps | grep '<image_name>' | awk '{ print $1 }'
Ceci a l'avantage d'être une chaîne sur le image_name
au lieu de rechercher un modèle correspondant. Merci à @ kevin-cui et @ yu-chen.
Je vous remercie. Travail parfait
La réponse acceptée fonctionne, mais vous pourriez avoir un nom de conteneur mal nommé qui a Vous pouvez utiliser l'indicateur comme alternative. L'indicateur postgres
dans son nom mais qui exécute en fait une image totalement différente, car la réponse n'utilise que grep code> pour rechercher les lignes correspondantes.
filter
intégré de Docker: docker ps --filter "ancestor=postgres" -q
-q
indique de ne renvoyer que l'ID du conteneur (mode silencieux).
Je n'avais besoin que d'obtenir le dernier identifiant de conteneur en cours d'exécution par nom d'image, y compris les conteneurs arrêtés:
docker ps -a | grep 'django-content-services:' -m 1 | awk '{ print $1 }'
Dans le docker -a
pour inclure tous les conteneurs (même arrêtés ). Dans grep, -m
donc grep ne correspond qu'au premier cas. Bravo!
Filtrer par nom d'IMAGE
sudo docker ps -aqf "ancestor = portal-mhn: latest"
stackoverflow.com/questions/34496882/...