使用docker容器运行go程序,找不到可执行文件

用go写了一个项目,build后,打包成镜像运行。

查看运行日志,发现如下报错:

standard_init_linux.go:228: exec user process caused: no such file or directory

经过查阅资料后得知,golang在编译时可以选择使用C链接库(引用的C链接库不打包进程序)或者纯Go编译(打包所有用到的内容),而我使用的Go版本恰好又是默认使用C链接库也就是CGO方式编译的。

需在build可执行文件前,执行如下命令:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64

你可能感兴趣的:(dockergo)