Przygoda z Dockerem

Lista przydatnych komend i instrukcji, które warto mieć pod ręką pracując z dockerem.

PRZYDATNE KOMENDY

• OGÓLNE

# docker version informacje o wersji
# docker info podsumowanie pracy dockera

• WYKONYWANIE

# docker exec -i -t CONTAINER_NAME /bin/bash wykonanie komendy (w przykładzie „/bin/bash”) w uruchomionym kontenerze o nazwie CONTAINER_NAME

• PROCESY

# docker ps -a lista kontenerów (procesów aktualnie działających)
# docker rm CONTAINER_NAME usuwanie kontenera o nazwie CONTAINER_NAME (wymagane przed usunięciem obrazu)

• OBRAZY

# docker images lista obrazów
# docker rmi IMAGE_ID usuwanie obrazu z listy o ID IMAGE_ID

• COMPOSER – komendy (pracując w katalogu, w którym znajduje się plik „docker-compose.yml”)

# docker-compose up -d uruchamia „docker-compose.yml” w tle (jako daemon)
# docker-compose stop zatrzymuje kontenery
# docker-compose ps lista kontenerów (procesów aktualnie działających)

• REANIMACJA – zdarza się, że coś się poważnie sypnie

Opis zdarzenia, które miało miejsce po aktualizacji i restarcie serwera. Docker odmawia uruchomienia obrazów.:
Recreating docker_mysql-srv_1 ... error

ERROR: for docker_mysql-srv_1 sandbox af827f11c0(…)e45ba073 not found

ERROR: for mysql-srv sandbox af827f11c0(…)e45ba073 not found
ERROR: Encountered errors while bringing up the project.

Komendy które można wykonać:
# docker rm -f $(docker ps -aq)
# docker network rm $(docker network ls -q) – problem z wykonaniem
# docker run --rm -v /var/lib/docker/network/files:/network busybox rm /network/local-kv.db – problem z wykonaniem

Próba ponownego uruchomienia i kolejny błąd:
or: desc = "transport: Error while dialing dial unix /run/containerd/containerd.sock: connect: permission denied": unavailable

Ostatecznie wykonanie poniższych komend oraz restart serwera i wszystko wraca do normy.
# sudo apt-get purge docker-ce
# sudo apt autoremove
# sudo rm -rf /var/lib/docker
# sudo truncate -s 0 /var/log/syslog