Вопрос проверяет практический опыт работы с Docker и умение диагностировать проблемы контейнеров.
Для отладки чаще всего используют команды для просмотра контейнеров, логов и выполнения команд внутри контейнера.docker ps показывает запущенные контейнеры.docker logs позволяет посмотреть вывод приложения.docker exec используется для входа внутрь контейнера.
Эти команды покрывают большинство базовых сценариев отладки.
Отладка контейнеров обычно сводится к трём задачам: понять, запущен ли контейнер, что он пишет в логи и что происходит внутри.
docker ps
docker ps -a
Здесь можно увидеть:
Запущен ли контейнер
Код завершения
Команду запуска
docker logs <container>
docker logs -f <container>
Чаще всего этого достаточно, чтобы:
увидеть traceback
понять, почему контейнер упал
проверить старт приложения
docker exec -it <container> /bin/bash
Используется для:
Проверки файлов
Ручного запуска команды
Быстрой диагностики окружения
docker inspect <container>
Полезно для анализа:
переменных окружения
volume
network
command / entrypoint
docker stats
Позволяет увидеть:
потребление CPU
использование памяти
сетевую активность
Для базовой отладки обычно достаточно docker ps, docker logs и docker exec, а inspect и stats помогают углубиться в проблему.