Когда я запускаю singularity exec foo.simg whoami
, я получаю свое собственное имя пользователя от хоста, в отличие от Docker, где я получаю root
или пользователя, указанного в контейнере.
Если я смотрю на /etc/passwd
внутри этого контейнера Singularity добавлена запись в /etc/passwd
для моего идентификатора пользователя хоста.
Как создать переносимый контейнер Singularity, если я не знаю идентификатора пользователя, что программы будут запускаться как ?
Я преобразовал контейнер Docker в образ Singularity, но он ожидает, что он будет работать как определенный идентификатор пользователя, который он определил, и несколько каталогов были chown
'd для этого пользователя. Когда я запускаю его под Singularity, мой хост-пользователь не имеет доступа к этим каталогам.
Это было бы взломом, но я мог бы изменить изображение на chmod 777
всех этих каталогов. Есть ли лучший способ заставить этот образ работать на Singularity как любой пользователь?
(я использую Singularity 2.5.2.)