如何使用 apparmor 在 docker 容器中启用挂载文件系统

How do I enable mounting filesystems in docker containers using apparmor

我有一个 ubuntu 20.04 服务器 运行 docker。最近,默认的 apparmor 配置文件似乎已经开始对 docker 容器中的挂载点实施限制。所以容器直接写入根文件系统而不是挂载。

在 docker 之外,我可以毫无问题地导航挂载,但是在容器中执行 shell 时,就好像挂载点没有挂载一样。

我已将其缩小为由 apparmor 引起,禁用 apparmor 允许安装并且一切正常,如我所料。容器似乎正在使用 docker-default 配置文件。

我的问题是:如何在全局或单个容器上启用 docker 容器中的安装。我宁愿不必为此问题完全禁用 apparmor?

0

所以事实证明我的问题实际上是 Docker 在挂载文件系统之前开始。我相信我可以更改 docker 的 systemd 文件以延迟启动,直到我的安装到位。容器作为目录绑定到挂载点并直接写入根文件系统。

顺便说一句,您可以使用 security_opt 选项更改用于容器的 apparmor 配置文件,并使用 apparmor-parser 加载新的配置文件。我的容器没有安装,但如果安装已经到位,它们也不需要它。