Polecenie ponownego uruchomienia wszystkich działających kontenerów Docker?

85

Jak zrestartować wszystkie uruchomione kontenery Dockera? Głównie szukanie skrótu zamiast robić

Docker restartuje containerid1 containerid2

Ranjith's
źródło

Odpowiedzi:

179

Po prostu biegnij

docker restart $(docker ps -q)

Aktualizacja

Do 1.13.1użycia Dockera docker restart $(docker ps -a -q)jak w odpowiedzi niżej.

Andrey Romashin
źródło
1
Wiem, że -alista kontenerów nie jest uruchomiona, ale co to -qoznacza?
Jim Aho
od docker ps --help: -q, --quiet Only display numeric IDs Możesz uzyskać pomoc dla każdego polecenia docker [command] --help
dokera na
82

Dla mnie to teraz:

docker restart $(docker ps -a -q)
bohr
źródło
4
warto wszystkim wspomnieć, że działa tylko w PowerShell
stenly
18

Jeśli tak docker-compose, wszystko, co musisz zrobić, to:

docker-compose restart 

I otrzymujesz ładny wydruk nazwy kontenera wraz z jego statusem ponownego uruchomienia (zrobione / błąd)

Oto oficjalny przewodnik dotyczący instalacji: https://docs.docker.com/compose/install/

benjaminz
źródło
14

Aby uruchomić tylko zatrzymane kontenery:

docker start $(docker ps -a -q -f status=exited)

(W systemie Windows działa w Powershell).

Cepr0
źródło
1

Aby rozpocząć wszystkie pojemniki:

  docker restart $(docker ps -a -q)

Użyj sudo, jeśli nie masz uprawnień do wykonania tego:

sudo docker restart $(sudo docker ps -a -q)
Hitesh Kumar
źródło
0

Aby rozpocząć wiele kontenerów z jedynymi określonymi identyfikatorami kontenerów $ docker restart contianer-id1 container-id2 container-id3 ...

naveen chander
źródło
0

Uruchom to jako uprawnienia administratora, w przeciwnym razie może to nie działać

  docker restart $(docker ps -a -q)

z uprawnieniami roota

sudo docker restart $(sudo docker ps -a -q)
Akitha_MJ
źródło