Я работаю в контейнере Kong API Gateway Docker и пытаюсь установить базовую обработку пакетов. В конечном счете, мне нужно иметь возможность использовать sudo
. Образ Docker поставляется столькоКоманды busybox bin, расположенные в /bin/
.
Что я пробовал
Я оказался в затруднительном положении, потому что каждое руководство, объясняющее загрузку apt-get, использует sudo
, и каждое руководство, которое я нахожу по загрузке, sudo
использует apt-get
. У меня нет ни sudo, ни apt, ни apt-get.
Если я попытаюсь использовать su
, su -
, su - <cmd>
, или что-то подобное, я получу сообщение «должен быть suid для правильной работы».
Что доступно
Вот все доступные команды, расположенные в /bin:
wget
Как мне получить , или с помощью приведенных выше команд sudo
?
решение1
Даже если вы залезли sudo
в свою систему (легко), это не поможет. Для работы нужен setuid-root. И вы не сможете это настроить без доступа root.
Если запуск команд без sudo
не работает, то это потому, что Dockerfile имеет USER
строку. Если вы отредактируете Dockerfile, чтобы поместить apt-get
(или команды для установки apt-get
) перед этой строкой, то он сможет установиться (вы все еще будете root).