Не изменяйте его на пользователя с другим UID
. Разрешение может быть изменено самим контейнером при запуске. вам может понадобиться просмотреть образ докера, который вы используете в этом случае.
Итак, давайте возьмем mysql-docker например. при запуске разрешения будут изменены даже для подключенного тома, чтобы работать должным образом, в противном случае вы столкнетесь с проблемой разрешений, так как пользователь mysql
не может записывать какие-либо данные.
Основываясь на теге weblogic12c
в вашем вопросе, я заметил следующее в Dockerfile weblogic:
RUN chown oracle:oracle -R /u01
Если ваши данные сохраняются в контейнере в том же каталоге, то, вероятно, 1000
представляет oracle
пользователя внутри контейнера, вы также можете проверить /etc/passwd
внутри контейнера.
Таким образом, UID
и GID
, равные 1000
, в вашем случае представляют пользователя внутри контейнера, который используется процессом контейнера, и поскольку у вас нет пользователя, совпадающего с этим UID
, он будет появляются в числовом виде, как вы видите это. Вы можете создать пользователя с тем же UID на хосте, если хотите. Таким образом, чтобы дать 1000
имя пользователя и имя группы, вам нужно сделать следующее:
useradd -U -u 1000 oracle
Приведенная выше команда создаст пользователя с именем oracle
и группу с тем же именем из-за использования -U
, а UID / GID будет 1000
из-за использования -u
-u, --uid UID user ID of the new account
-U, --user-group create a group with the same name as the user
Далее, если вы выполнили следующую команду на хосте, вы получите результат, который сообщит вам группу пользователей и uid / gid:
id oracle
uid=1000(oracle) gid=1000(oracle) groups=1000(oracle)