Проблема с использованием докера, ни одна команда не работает, "sudo". Как решить?

avatar
lucas
9 августа 2021 в 04:44
80
3
0

Я пытаюсь установить nano , и при использовании команды apt-get install nano внутри докера мне предлагается использовать суперпользователя:

E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?

И при попытке использовать sudo он говорит, что его не существует

bash: sudo: command not found
Источник

Ответы (3)

avatar
GrayMonk
9 августа 2021 в 11:08
0

Попробуйте это: docker exec -u root -it <your_container_name> bash а затем apt-get install nano.

avatar
Shaqil Ismail
9 августа 2021 в 09:15
0

Для Docker вам необходимо протестировать каждую команду, поскольку она выполняется на локальном хост-компьютере, у вас уже установлено много инструментов, а образы Docker у вас обычно минимально необходимы, поэтому устанавливается только то, что требуется, и размер образа Docker также может быть маленьким.

Либо посмотрите, какое программное обеспечение уже установлено в образе Docker, используя команду compgen -c, а затем установите нужное вам программное обеспечение, которое не установлено, либо запустите свое программное обеспечение и посмотрите, появляются ли ошибки или программное обеспечение не работает. найдено, а затем установите необходимое программное обеспечение.

avatar
Sergey K.
9 августа 2021 в 04:50
1

Большинство док-контейнеров не предоставляют sudo util. Если вам нужно какое-то программное обеспечение в вашем контейнере, вы можете создать свои образы на основе другого, которое вам нужно, установив необходимое программное обеспечение, описав его в файле dockerfile. Также вы можете установить sudo в свой собственный образ.