Come eseguire l'image docker come singleton

Sono nuovo al banco.

Ho un'image che voglio correre, ma voglio fare la docker per vedere se l'image è già in esecuzione da un altro terminal … se è in esecuzione non voglio che carichi un altro …

è questo qualcosa che può essere fatto con docker?

se aiuta, sto eseguendo il docker con una modalità privilegiata.

Ho cercato di cercare il singolo docker o qualcosa di simile, ma senza fortuna.

aggiornamenti – 1.working da ubuntu. Il mio scenario – dal terminal XI eseguire il docker run Image_a dal terminal YI eseguire docker run Image_a quando si cerca di eseguire dal terminal Y, voglio fare docker per verificare se esiste già un docker in esecuzione con Image_a e la risposta è vera – non voglio fare docker da eseguire nel terminal Y

È ansible utilizzare il seguente command docker per get tutti i contenitori che eseguono da un'image specifica:

 docker ps --filter ancestor="imagename:tag" 

Esempio:

 docker ps --filter ancestor="drone/drone:0.5" 

Esempio di output:

 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3fb00087d4c1 drone/drone:0.5 "/drone agent" 6 days ago Up 26 minutes 8000/tcp drone_drone-agent_1 

Questo approccio usa il docker api e il docker daemon, quindi non import se il command di esecuzione eseguito in background o altro terminal.

Un altro approccio:

Se hai un unico contenitore, una singola image:

Prova a nominare i tuoi contenitori, Non puoi avere 2 contenitori con lo stesso nome:

 docker run --name uniquecontainer Image_a 

La prossima volta che si esegue il command di cui sopra verrà visualizzato un errore. Considerate l'utilizzo di -d quindi non devi cambiare terminali.

 docker run -d --name uniquecontainer Image_a