1. 程式人生 > >使用docker 釋出的go編譯的程式無法執行的問題

使用docker 釋出的go編譯的程式無法執行的問題

今天在容器中執行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