docker:来自守护程序的错误响应:系统上启用了 AppArmor,但无法加载 docker 默认配置文件



我按照官方网站上描述的安装过程在 ubuntu 19.04 上安装 docker-ce 19.03.3。安装效果很好。但是当我想通过创建容器进行测试时,

我有这个错误:

Error response from daemon: AppArmor enabled on system but the docker-default profile could not be loaded

跑步/usr/sbin/apparmor_parser apparmor_parser -Kr /var/lib/docker/tmp/docker-default911109442

输出失败:

'AppArmor parser error for /var/lib/docker/tmp/docker-default911109442 in /etc/apparmor.d/tunables/global at line 17: Could not open 'tunables/proc'

'

也许你的操作系统没有安装apparmor

尝试执行此操作apt install apparmor -y

然后重新启动容器。

> 安装apparmor-utils包为我🎉解决了这个问题

https://docs.docker.com/engine/release-notes/23.0/#known-issues

你在这个码头工人问题中有你的答案:https://github.com/moby/moby/issues/20554

你只需要创建这个文件:/etc/apparmor.d/tunables/proc

并把这一行放进去:

@{PROC}=/proc/

我在新驱动器的分区上安装了新版本的Linux Mint 20 Ulyana(我的主目录同步到不同的分区(,发现Apparmor无法启动,docker不会与任何容器一起运行,甚至不能hello_word。这些错误都提到了apparmor。我发现许多文件

/

etc/apparmor.d/

第 7 行有文本,但第 7 行显示二进制符号。我发现可以通过运行以下命令重新创建配置:

$ sudo dpkg-reconfigure apparmor

之后的配置文件

/

etc/apparmor.d/

都是文字。然后apparmor将开始

$/etc/init.d/apparmor restart

然后我的 docker 容器再次运行。

运行 Ubuntu 20.04 LTS,刚刚运行了"apt update",然后运行了"apt dist-upgrade",在启动 docker 时遇到了类似的错误。 通常我会移除apparmor,就像这里的情况一样。我不得不重新安装 apparmor,然后在 docker 容器启动之前将其删除。

最新更新