sudo
проверяетPATH
(обычно " secure_path
" и даже не полныхPATH
)ваших пользователей и rootPATH
)для команд и, следовательно, не работает со встроенными модулями и функциями. command
является встроенным, и sudo использует команду docker
в вашем PATH
, а не в вашей функции.
Вы могли бы решить эту проблему, создав скрипт-оболочку, указывающий на command
встроенную (или аналогично с вашей функцией докера )и поместив этот скрипт в PATH
, но вы не следует этого делать. Вы должны просто запустить сам докер с sudo
, когда это необходимо.