Использование дисков на некоторых из моих серверов составляет 100%, поэтому я пытаюсь удалить неиспользуемые образы докеров, чтобы освободить место на диске.
За исключением одного сервера, команда docker image rm работала нормально.
Но для определенного сервера команда не работает.
USER@HOST:/home1:> docker rmi DOCKER_IMAGE_ID --force
После этой команды ничего не происходит, и команда не завершается.
я добавил -debug
вариант, но он тот же, никакой информации не печатается.
docker ps
команда работает хорошо.
Как я могу это решить?
Или есть способ удалить образ докера, найдя соответствующий файл и запустив rm SOME_FILE
?
2 ответа
Для изображений команда docker rmi imagename/id
.
Для контейнеров команда docker rm containername/id
.
Если он зависает, это либо ошибка в движке докеров, либо в базовом хосте.
Если зависает сам движок докера, то может помочь проверка журналов движка. С помощью systemd вы можете поднять их с помощью journalctl:
sudo journalctl -u docker
Для дальнейшей отладки в стеке Go вы можете принудительно выводить трассировку стека с помощью:
sudo kill -SIGUSR1 $(pidof dockerd)
Эти журналы будут записаны в /var/run/docker/
.
Если проблема связана с самим хостом Linux, например с неисправным диском, то проверка журналов /var/log
, а вывод dmesg
может помочь определить потенциальную причину.
Конечно, простой ответ — начать с его выключения и снова включить, перезапустив движок докера с помощью:
sudo systemctl restart docker
С
sudo journalctl -u docker
, я вижу, что самый последний журнал написан 24 февраля, и этоFeb 24 04:32:58 HOST dockerd[18977]: time="2021-02-24T04:32:58.109635778+09:00" level=error msg="failed to process event" container=XXXX error="open /var/lib/docker/containers/XXXX/.tmp-config.v2.json239865109: no space left on device"
Не могли бы вы мне еще намекнуть?— юн
1 час назад@yoon Я не на вашей машине, чтобы запускать команды, чтобы дать более подробную информацию. Показанный вами журнал показывает, что у вас закончилось дисковое пространство в этой позиции, будь то байты или inodes. Хотя это также может быть ошибка приложения или настройки безопасности на хосте.
— BMitch
1 час назад
Я в курсе команд. я имею в виду
docker rmi
команда зависает. Команда не работает на определенном сервере, и я хочу найти причину.— юн
21 часов назад
Есть ли у изображения несколько тегов? Попробуйте использовать
rmi
команда с каждым тегом в качестве параметра для всех тегов. Удаление последнего тега должно также удалить изображение. Какая ОС для проблемного сервера?— harrymc
21 часов назад
Я использую CentOS 7. Есть ли разница между использованием
rmi
с IMAGE_ID и с REPO: TAG? Оба результата одинаковы.— юн
20 часов назад