2020年9月30日のブックマーク (1件)

  • Golangのシングルバイナリをいい感じでDocker Image化する - blog.potproject.net

    Golangはシングルバイナリ(単体で動く実行ファイル)を出力してくれてありがたいのですが、それをコンテナ向けの軽量LinuxであるalpineやBusyBoxを使って動かそうとすると、ハマることが多い。 シングルバイナリじゃなかったのか、と思ってしまうのだが、どうやらデフォルトで一部のライブラリがダイナミックリンクになっているからである。 このあたりが参考になった。 golangでビルドしたバイナリをスタティックリンク (static link)にする これ、割とググればいろいろ出てくるのですが結局のところイマイチ最適解が見つからない。 何故かっていうと、中身に入っているライブラリなどで割かしビルド条件を変える必要があるため。 また、コンテナのサイズも小さくしたいので、いろいろとオプションを調べて、自分はこんな感じで落ち着いた。 ※ちなみに今回想定しているシングルバイナリは、Golang

    Golangのシングルバイナリをいい感じでDocker Image化する - blog.potproject.net