Я новичок в Docker, и я видел, что некоторые скрипты для запуска контейнерного программного обеспечения требуют указания любого из них для соответствия определенному пользователю и группе. Поэтому мне было интересно, в чем разница между тем и другим? Примеры приведены ниже для иллюстрации.
В поисках информации я даже увидел несколько случайных репозиториев github в какой-то момент это изменилось с первого на более позднее; в чем разница между обоими вариантами?
Я понял ваш вопрос следующим образом: "Почему эти переменные называются PUID и PGID вместо UID и GID"? На самом деле их вообще можно было назвать как угодно. Ни Docker, ни Linux это не волнует. Это приложение решает, что с ними делать.
Дальнейшие поиски показали, что это всего лишь соглашение, и некоторые приложения делают свое дело. Например, одно приложение использует переменные окружения MAY_USER_UID и MAY_USER_GID соответственно.
Использование PUID и PGID позволяет нашим контейнерам сопоставлять внутреннего пользователя контейнера с пользователем на хост-компьютере. Все наши контейнеры используют этот метод сопоставления пользователей и должны применяться соответствующим образом.
Еще одна заметка с этой страницы:
Нам известно, что в последних версиях движка Docker был введен флаг --user. Наши изображения еще не совместимы с этим, поэтому мы рекомендуем продолжать использовать PUID и PGID.
Итак, это необходимо для запуска контейнера. Как это будет реализовано, зависит от тех, кто поддерживает эти изображения.
Я понял ваш вопрос следующим образом: “Почему эти переменные называются PUID и PGID вместо UID и GID”? На самом деле их вообще можно было назвать как угодно. Ни Docker, ни Linux это не волнует. Это приложение решает, что с ними делать.
@MichaelHampton Я так не думаю; Я думаю, что где-то должна быть какая-то спецификация или документация по этому поводу, если это не Docker, возможно, это Linux, но я не смог ее найти. Конечно, я мог бы спросить разработчиков, но поскольку этот вопрос на самом деле не был бы связан с разработкой их программного обеспечения, я бы предпочел не раздражать их своим касательным невежеством, если это возможно. Но, может быть, этот вопрос лучше всего подходит для суперпользователя?
@MichaelHampton Действительно, вы были правы с самого начала. Похоже, мое замешательство возникло из-за того, что я не знал, что переменные окружения можно называть как угодно. Пожалуйста, не стесняйтесь добавлять свой ответ в качестве ответа, чтобы я мог пометить его как решение. Кроме того, спасибо вам за помощь!