使用docker 发布的go编译的程序无法执行的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liuliuzi_hz/article/details/73549950
今天在容器中执行go静态编译的程序无法执行,提示 可执行程序 not found。经过尝试发现将程序放在较大容器镜像中的可以执行,放在小容器镜像(比如busybox,scratch)中无法执行。 
后来发现go 编译的程序如果涉及net package,还是会动态编译的。
解决方案可以在go 编译命令后加 -tags netgo 。比如 go build -tags netgo 
具体可见
https://stackoverflow.com/questions/36279253/go-compiled-binary-wont-run-in-an-alpine-docker-container-on-ubuntu-host

猜你喜欢

转载自blog.csdn.net/liuliuzi_hz/article/details/73549950