docker运行卷更改目录权限root

6 docker dockerfile docker-compose docker-machine

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

这就是我运行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
Run Code Online (Sandbox Code Playgroud)

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

Jul*_*ian 3

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

您可以使用-uparam 来设置您在外部使用的用户(例如-u `id -u $USER`),但如果您需要容器内的 root 权限,则必须手动 chown 。