docker 运行 with volume changes directory permission to root

docker run with volume changes directory permission to root

当我运行宁docker图像时,我挂载的工件目录获得root权限。 我希望工件具有与用户相同的权限。 是否可以在 运行 宁 docker 图像时将用户作为参数传递,以便它创建具有特定用户权限的工件目录?

我就是这样 运行 docker:

docker run --cap-add SYS_ADMIN --security-opt apparmor:unconfined -it -v /home/artifacts:/artifacts dock_img

drwxr-xr-x  2 root   root   4.0K Nov 16 13:58 artifacts

由于此工件获得 root 权限,我无法通过我的用户登录对其进行处理。有人可以帮我解决这个问题吗?

这是因为你在容器内使用了root用户。

你可以使用-u参数来设置你在外部使用的用户(例如-u `id -u $USER`),但是如果你需要容器​​内的root,你必须手动chown。