为ptrace_scope禁用Docker的AppArmor

是否有可能为特定的Docker容器禁用AppArmor? 我想使ptrace可访问,所以我可以将gdb附加到正在运行的进程,但是当我想更改设置时遇到以下问题:

root@fbf728150308:/gopath# echo 0 > /proc/sys/kernel/yama/ptrace_scope bash: /proc/sys/kernel/yama/ptrace_scope: Read-only file system 

可以通过运行非限制或作为特权容器禁用AppArmor:

  • --security-opt apparmor=unconfined (或apparmor:unconfined对于docker 1.10及以下的非限制)
  • --privileged (以root --privileged运行)

但是,更好的select是创build一个启用ptrace的新configuration文件。 您可以使用docker AppArmorconfiguration文件作为起点(位于/etc/apparmor.d/docker ),并追加ptrace peer=@{profile_name}

您还需要通过--security-opt seccomp=unconfined禁用seccomp