Docker 17.05で導入される「Docker multi stage build」はの紹介です。「Docker multi stage build」を使うとビルド依存のライブラリと、ランタイム(プログラムの実行)依存のライブラリとを分離することで、Dockerイメージのサイズを大幅に削減できます。 👽 Docker Imageのサイズを比較次のDockefileは、Golangのサンプルプログラムをビルドした後に、 ランタイム(実行)依存のイメージを作成しています。 # ビルド依存のライブラリ # 中間イメージに`build-env`という名前をつける FROM golang:alpine AS build-env ADD . /work WORKDIR /work RUN go build -o hello main.go # ランタイム(実行)依存のライブラリ FROM bus