我正在尝试杀死通过docker-compose
启动的容器。通过正常停止(Ctrl + C)或docker-compose down
,我遇到以下错误:
ERROR: for <container-name> cannot stop container: b60c1c4d886899504b...2a022e4d39429dc6ca6e4784afdd: Cannot kill container b60c1c4d886899504b...2a022e4d39429dc6ca6e4784afdd: unknown error after kill: runc did not terminate sucessfully: container_linux.go:388: signaling init process caused "permission denied"
: unknown
我只是在寻找答案为什么。我试图更好地了解AppArmor,但了解为什么,我无法在一切都有助于了解正在发生的事情之前停止容器。
我看到这是很多人遇到的错误。 1 2 3 4
但是,大多数答案都建议解决方法,而没有解决方案。甚至诸如1之类的解释性答案也直接进入了AppArmor和个人资料。从docker文档中,我看到docker具有默认的AppArmor策略docker-default
。我部分理解了这个概念,但是仍然不明白为什么为什么。我无法通过用户和我在其中启动容器的环境来阻止容器。
如果我想回答我的问题:
sudo
也不起作用。谁能阻止他们?欢迎任何反馈或解释。谢谢。
答案 0 :(得分:0)
我找不到确切的原因,但是差一点了。看来我的Ubuntu 19.10上的docker安装冲突,这导致了此访问控制问题。
如here所述,我已经删除了快照安装。因为我已经进行了另一次安装,所以不必通过其他方式进行安装。
sudo snap remove docker