我能够使用
启动运行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
时发生了同样的事情。
答案 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