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

Другие вопросы по тегам