Почему buildah run поддерживает `--имя хоста `, но не podman exec?

Я обновил VMware до последней версии и установил инструменты VMWare. Наконец я установил общую папку:

  1. Нажмите «Настройки виртуальной машины»
  2. Щелкните Опции
  3. Выбор общих папок
  4. Нажмите «Добавить»
  5. Добавьте имя папки в гостевой системе и путь к хосту
  6. Убедитесь, что установлен флажок Включено
  7. Нажмите OK. -> Общая папка устанавливается между хостом и гостевой ОС
0
17.11.2020, 02:28
2 ответа

Причина здесь требует небольшого пояснения,

  • Контейнер — это любой набор пространств имен и возможностей, концептуально связанных.
  • Контейнер работает (в состоянии ), когда какой-либо процесс в контейнере в настоящее время выполняется.
  • Большинство пространств имен (, кроме пользовательского, я считаю, что )должны быть установлены до запуска контейнера.
  • Изменения в пространстве имен видны всем процессам в этом пространстве имен.
  • buildah runзапускает не работающий контейнер и инициализирует эти пространства имен. Поскольку он знает, что в пространствах имен больше ничего не работает, ему не нужно беспокоиться о неблагоприятных последствиях их изменения.
  • podman execберет работающий контейнер и запускает другой процесс с тем же PID (и другими )пространствами имен. Поскольку он не инициализирует пространство имен, любое изменение внутри пространства имен повлияет на все другие процессы, присоединенные к этим пространствам имен. По этой причине модификации пространств имен отключены.
0
18.03.2021, 22:49

buildah run ближе к podman run, который поддерживает имя хоста --.

podman exec должен выполняться в работающий контейнер, в то время как buildah run и podman run создают новые контейнеры.

Кстати, цель buildah run — запустить контейнер, чтобы помочь создать образ контейнера. Podman run имеет более общее назначение.

0
18.03.2021, 22:49

Теги

Похожие вопросы