Si vous recherchez un conteneur spécifique, vous pouvez exécuter:
if [ "$( docker container inspect -f '{{.State.Running}}' $container_name )" == "true" ]; then ...
Pour éviter les problèmes avec un conteneur qui se trouve dans une boucle de crash et qui redémarre constamment pour montrer qu'il est en place, ce qui précède peut être amélioré en vérifiant le Statuschamp:
if [ "$( docker container inspect -f '{{.State.Status}}' $container_name )" == "running" ]; then ...
Si vous voulez savoir si dockerd s'exécute lui-même sur la machine locale et que systemd est installé, vous pouvez exécuter:
systemctl show --property ActiveState docker
Vous pouvez également vous connecter au docker avec docker infoou docker versionet ils obtiendront une erreur si le démon n'est pas disponible.