https://forums.docker.com/t/what-to-do-when-all-docker-commands-hang/28103/4Od korayhk:
Data obrázku kontejneru nemusíte znovu instalovat ani mazat. Jednoduše postupujte níže:
Nejprve zastavte službu
sudo service docker stop
Vyčistěte některé soubory, jak je uvedeno ve výše uvedeném příspěvku od Sama.
sudo rm -rf /var/run/docker
sudo rm /var/run/docker.*"
Spustit službu nyní
sudo service docker start
Spusťte svůj docker image
docker start <container-name>
Při prvním spuštění dockeru se zobrazí chyba:
Chybová odpověď od démona:neplatná hodnota pole záhlaví "oci runtime error:kontejner s ID existuje:7a244b8f5d07081538042ff64aebfe11fac1a36731526e77be53db7d94dca44d\n"Chyba:Nepodařilo se spustit kontejnery:
Zkuste znovu spustit příkaz pro spuštění dockeru. Váš kontejner bude magicky v provozu bez jakýchkoli chyb.
Po aktualizaci mého ubuntu na 5.8.0-34-generic . Měl jsem podobný problém. po různých pokusech o vyřešení bylo mým konečným řešením downgrade dockeru na předchozí pracovní verzi. Postupujte podle níže uvedených kroků:
- Kill docker
[email protected]:~# killall dockerd [email protected]:~# ps -aux | grep dockerd [email protected]:~# kill -9 your docker pid
- Odstraňte docker ce, cli a container.io
[email protected]:/home/xyz# apt remove docker-ce docker-ce-cli containerd.io
- volitelný krok:můj dockerd se neustále restartoval, takže jsem musel vypnout ir. Pokud uděláte totéž. po nové instalaci jej budete muset povolit:
systemctl disable docker
- zkontrolujte předchozí verze:
[email protected]:/home/xyz# apt-cache madison docker-ce
- nainstalujte starší verzi z výše uvedeného seznamu, v mém případě docker-ce 5:19.03.13~3-0~ubuntu-focal :
[email protected]:/home/xyz# apt install docker-ce=5:19.03.13~3-0~ubuntu-focal
- volitelné:pokud potřebujete přejít na nižší verzi také kontejnerd.io a cli, pak:
apt install docker-ce=5:19.03.13~3-0~ubuntu-focal containerd.io=1.3.9-1 docker-ce-cli=5:19.03.13~3-0~ubuntu-focal
- zkontrolujte svou instalaci:
whereis docker systemctl status docker
Také jsem označil můj ukotvitelný panel, aby neupgradoval při upgradu apt příkaz.
Vyzkoušel jsem obě odpovědi od Garretha a steamfood, ale nechtěl jsem přeinstalovat docker, jak navrhl Invincible. Na svém systému jsem nic neměnil, takže jsem usoudil, že problém bude spíše v konfiguraci/nastavení kontejneru než v instalačním problému samotného dockeru.
Při spuštění systemctl start docker
nebo cokoli jiného ke spuštění nebo zastavení služby docker, dostal jsem to do protokolů (spuštěním systemctl status docker
v jiném terminálu):
Loading containers: start.
Container ef06fbb157169332c453f503bb2543ce914daf54600f8fa44699fa5833d9eb90 failed to exit
Po tomto bodě by se zablokoval.
Abych to napravil, nejprve jsem zabil proces identifikovaný v systemctl status docker
s sudo kill -9 $PID
.
Poté jsem smazal vše v /var/lib/docker/containers
s sudo rm -rf /var/lib/docker/containers/*
.
Tím se problémový kontejner vyčistil a od té doby vše fungovalo.
Vím, že tato otázka je trochu stará, ale chcete-li to opravit, zkuste smazat obsah:
/var/run/docker/libcontainerd