A volte, alcuni processi sono bloccati durante l'esecuzione del contenitore. Ciò può essere dovuto a un problema con la rete o il motore Docker. A tale scopo, il riavvio di Docker può risolvere questo tipo di problema.
Questo articolo dimostrerà come riavviare Docker senza fermare i contenitori.
Come si riavvia Docker senza fermare i contenitori?
Quando gli utenti Docker si fermano o riavviano il Docker, riavverrà solo il demone Docker, non i contenitori. In Windows, i contenitori vengono eseguiti come processo separato. Quindi i contenitori in esecuzione non possono essere terminati o arrestati quando il motore Docker si interrompe:
Per la dimostrazione, passare attraverso le istruzioni fornite.
Passaggio 1: creare un file di composizione
Innanzitutto, crea un file di composizione per eseguire più servizi in contenitori. Ad esempio, eseguiremo il "go-img"Che ha containerizzato il progetto Golang:
Passaggio 2: Avvia Docker Container
Quindi, creare e avviare il contenitore in Docker Commy utilizzando il comando dato. Qui, "-D"Eseguirà i servizi o i contenitori in background:
Per conferma se il contenitore è in esecuzione o meno, visitare il porto specificato dell'host locale. Ad esempio, abbiamo navigato al "8080":
Passaggio 3: Apri Windows Powershell
Avvia Windows Powershell come amministratore dal menu Start:
Passaggio 4: riavvia il servizio Docker
Riavvia il motore Docker riavviando il servizio Docker con l'aiuto di "Docker del servizio di riavvio"Comando:
Verificare se il servizio viene riavviato o meno "Get-Service Docker"Comando:
> Get-Service DockerQui, puoi vedere che abbiamo riavviati con successo il docker:
Ancora una volta, vai alla porta host locale in cui è in esecuzione il container:
Puoi vedere che dall'output sopra, il contenitore non è terminato quando abbiamo riavviato il servizio Docker.
Conclusione
In Windows, quando il servizio Docker viene riavviato, non influenzerà o fermerà il contenitore Docker. Perché i contenitori vengono eseguiti come processo separato. Innanzitutto, esegui Windows PowerShell come amministratore per riavviare il servizio Docker. Dopodiché, esegui il “Docker del servizio di riavvio"Comando per riavviare il servizio Docker. Questo articolo ha dimostrato come riavviare Docker senza fermare i contenitori.