删除由 root 创建的文件?

删除由 root 创建的文件?

我有一个自动生成的 docker 容器,它创建了一个构建输出。这些文件由 root 用户创建,例如 /home/buildUser/bla/

现在 buildUser 无法再删除这些文件,因为它们归 root 所有,而 buildUser 没有管理员权限。我该如何解决这个问题?我更喜欢不需要每次都运行脚本的解决方案。我也无法修改 docker 容器,因为第三方需要 root 权限...

答案1

如果容器可以创建 root 拥有的文件,则显然容器具有 root 权限。那么为什么不使用它再次获得 root 权限并删除它们呢?

例如,您可以使用phusion/baseimageDocker 优化的 Ubuntu 镜像。如果您无法运行任意镜像,请尝试将其bash作为命令提供给您可以访问的镜像(只需替换phusion/baseimage您的镜像名称即可)。

gronostaj@ubuntu:~$ docker run -it --rm -v /home/gronostaj:/mnt:z phusion/baseimage bash
root@612d766be480:/# cd /mnt
root@612d766be480:/mnt# rm -rf unwanted_folder

恭喜,您刚刚了解了错误配置的 Docker 的危险。

相关内容