事象

golangでbuildしたバイナリをdockerのコンテナーで動かそうとしたら、以下のメッセージが出力されました。

このメッセージが出力されると、当然のように動きません。

./epgstation-slack-notification: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./epgstation-slack-notification)
./epgstation-slack-notification: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./epgstation-slack-notification)

対処

以下でbuildすればOKです。

CGO_ENABLED=0 go build

クロスコンパイルする際の指定です。デフォルトが1になってるので、0に変更します。

参考

GoでCのライブラリを使ったプログラムをクロスコンパイルする - hatappi.blog