mydocker icon indicating copy to clipboard operation
mydocker copied to clipboard

请问 main_command.go中的initCommand的Action函数是在哪里调用的?

Open mengya22 opened this issue 7 years ago • 2 comments

请问3.1节 ,也就是code-3.1 main_command.go中的initCommand的Action函数在哪里调用的,我gdb跟踪代码一直没跟踪到这个函数里面去,就直接运行了,所有我不知道这个方法是从哪里进入并运行的,谢谢!

mengya22 avatar Jan 04 '19 10:01 mengya22

不知道你是否还能看到或者你已经解决 在container/container_process.go里面,创建了一个命令行调用,调用的就是自身,入参就有init,就相当于手动执行mydocker init ... 这样的效果,调试无法跟踪目测也是因为此时创建了一个新的进程

args := []string{"init", command} cmd := exec.Command("/proc/self/exe", args...)

pxing1989 avatar Mar 04 '19 11:03 pxing1989

不知道你是否还能看到或者你已经解决 在container/container_process.go里面,创建了一个命令行调用,调用的就是自身,入参就有init,就相当于手动执行mydocker init ... 这样的效果,调试无法跟踪目测也是因为此时创建了一个新的进程

args := []string{"init", command} cmd := exec.Command("/proc/self/exe", args...)

问题之前看懂了,读完了这本书也调完了提供的所有代码,真的很感谢你的书和代码,对我理解docker有着巨大的帮助,谢谢!

mengya22 avatar Mar 04 '19 13:03 mengya22