Soy nuevo en docker. Estoy escribiendo un sencillo script para docker. Necesito comprobar si docker se está ejecutando o no. ¿Hay un comando para comprobar con el nombre del contenedor
Si busca un contenedor específico, puede ejecutarlo:
docker inspect -f '{{.State.Running}}' $container_name
Si quieres saber si dockerd se está ejecutando en la máquina local y tienes systemd instalado, puedes ejecutar
systemctl show --property ActiveState docker
También puedes conectarte a docker con docker info
o docker version
y te darán un error si el demonio no está disponible.
puedes comprobar el estado de docker usando systemctl is-active docker
➜ ~ systemctl is-active docker
active
puedes usarlo como:
➜ ~ if [ "$(systemctl is-active docker)" = "active" ]; then echo "is alive :)" ; fi
is alive :)
➜ ~ sudo systemctl stop docker
➜ ~ if [ "$(systemctl is-active docker)" = "active" ]; then echo "is alive :)" ; fi
* empty response *
Cualquier comando docker (excepto docker -v
), como docker ps
.
Si Docker se está ejecutando, obtendrá alguna respuesta válida, de lo contrario obtendrá un mensaje que incluye "¿Está su demonio docker en funcionamiento?"
También puedes comprobar tu gestor de tareas.