Docker exec против nsenter: Есть ошибки?
Последние несколько месяцев я использовал nsenter для запуска оболочки на контейнере в целях отладки. Я слышал об и использовал docker exec, который был представлен в версии 1.3. Docker exec, похоже, является новой лучшей практикой с целью проникновения внутрь контейнера для целей отладки, но мне интересно, есть ли какие-либо недостатки в использовании docker exec по сравнению с nsenter. Информация, сравнивающая эти два, скудна. Существуют ли какие-либо конкретные проблемы, которых я должен избегать или избегать при использовании docker exec
против нсентера?
2 ответа
Это не совсем ясно, прямо сейчас. Но я бы поддержал мнение, что с docker exec
это официальный путь, чтобы пойти с этим. Автор nsenter
на самом деле рекомендует использовать docker exec
, Если у вас есть какие-либо недостатки, он рекомендует вам сообщить о них.
Docker Exec против Nsenter
Есть различия между nsenter и docker exec; а именно, nsenter не входит в cgroups, и поэтому избегает ограничений ресурсов. Потенциальная выгода от этого - отладка и внешний аудит, но для удаленного доступа в настоящее время рекомендуется использовать docker exec.
Работает только на 64-битных платформах Intel. Возможно, это единственная официально поддерживаемая платформа для Docker; так что это не имеет большого значения.
nsenter еще нужно запустить с хоста; он не может работать внутри контейнера (пока).
ссылка: https://github.com/jpetazzo/nsenter/blob/master/README.md