在运行systemd的docker容器中运行gdb

时间:2018-06-09 11:17:34

标签: docker systemd linux-capabilities

我能够使用

启动运行systemd的docker容器
sudo docker run -it -p 8022:22 -e container=docker debug-image /sbin/init

但是,gdb无法在此环境中调试C进程,因为它缺少必需的SYS_PTRACE功能。

我尝试将--cap-add=SYS_PTRACE添加到docker run命令行,但是systemd似乎在启动时挂起(它没有向终端打印)。当我尝试传递--privileged时发生了同样的事情。

1 个答案:

答案 0 :(得分:1)

此命令有效:

sudo docker run -it -p 8022:22 --tmpfs /tmp --tmpfs /run -v /sys/fs/cgroup:/sys/fs/cgroup:ro -e container=docker --privileged debug-image /sbin/init