Иногда нужно быстро оценить, что происходит с контейнерами: какие из них под нагрузкой, сколько памяти занято, нет ли узких мест по I/O.
Утилита ctop показывает это в реальном времени и позволяет сразу управлять контейнерами без переключения на другие команды.
Установка:
Свежая версия ctop работает и с cgroup v2, поэтому ставим бинарник напрямую из репозитория проекта.
sudo install -m 0755 -d /usr/local/bin
curl -L https://github.com/bcicen/ctop/releases/download/v0.7.7/ctop-0.7.7-linux-amd64 -o /tmp/ctop
sudo install -m 0755 /tmp/ctop /usr/local/bin/ctop
ctop -v
Использование:
Чтобы просмотреть ресурсы всех контейнеров на локальном хосте, достаточно выполнить одну команду:
ctop
В интерфейсе можно переключаться между контейнерами стрелками, останавливать или перезапускать их, а также открывать логи прямо оттуда. Если нужно подключиться к удалённому Docker, можно указать адрес перед запуском:
DOCKER_HOST=tcp://remote-host:2375 ctop
Для тех, кто не хочет ставить бинарник на хост, есть запуск из контейнера:
docker run --rm -ti \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
quay.io/vektorlab/ctop:latest
Чем отличается от docker stats:
docker stats тоже показывает ресурсы, но только в виде списка с метриками. В ctop всё представлено в виде интерактивной таблицы с сортировкой, поиском, фильтрацией и возможностью управлять контейнерами прямо из интерфейса.
Это удобнее, когда нужно не просто увидеть цифры, а быстро действовать, не выходя из одной программы.
Вывод:
С помощью ctop можно в пару команд получить наглядную картину по всем контейнерам, переключаться между хостами и при необходимости управлять ими прямо из терминала. Такой способ полезен как при мониторинге и отладке, так и при повседневной работе с Docker.
LinuxCamp | #utils #devops #docker #bymaga