Si está buscando un contenedor específico, puede ejecutar:
if [ "$( docker container inspect -f '{{.State.Running}}' $container_name )" == "true" ]; then ...
Para evitar problemas con un contenedor que se encuentra en un bucle de bloqueo y que se reinicia constantemente para que no muestre que está activo, lo anterior se puede mejorar marcando el Status
campo:
if [ "$( docker container inspect -f '{{.State.Status}}' $container_name )" == "running" ]; then ...
Si desea saber si dockerd se está ejecutando solo en la máquina local y tiene systemd instalado, puede ejecutar:
systemctl show --property ActiveState docker
También puede conectarse a la ventana acoplable con docker info
o docker version
y se producirán un error si el demonio no está disponible.