情景

自治docker base image启动时出现”standard_init_linux.go:211: exec user process caused "no such file or directory"错误。

解决

由于创建的base image里面只有一个c编译后的执行文件,但是利用docker build后执行时老出现上述错误。
后来发现,在利用gcc编译时,需要添加-static参数,来生成执行文件,这样docker run则不会再出现上述问题。

gcc static参数

当gcc -static 用于编译一个程序时,会使此程序静态编译(把动态库和所依赖的任何的东西,都编译进本程序),编译好后,文件会非常大,但是,运行时就不需要依赖任何动态库。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐