运行 gdb inside docker container 运行 systemd
Run gdb inside docker container running systemd
我能够使用
启动 docker 容器 运行 systemd
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
时发生了同样的事情。
此命令有效:
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
我能够使用
启动 docker 容器 运行 systemdsudo 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
时发生了同样的事情。
此命令有效:
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