DockerでWebサーバコンテナを作る時に気をつけること

単純にイメージを作ってしまった時に、これはまずいと思ったのでその時対処した時のメモ。

基本的にDockerでWebサーバのコンテナを作成するときに、ソースなどをADDをすると思います。 何も気にせずにADDをしてしまうと、イメージのVirtual Sizeが大きくなりすぎてしまいます。 なので.dockerignoreを使用して余計なファイルはコンテナ上には入れないようにします。 .gitとかはいらないと思うので基本的には省いたほうがいいのかなって思ったりします。

dockerfile内で、git pull github.com/xxxx/web.gitみたいにソースの最新を落としてくるような操作はやめたほうがいいのかなって思ったりしますね。ライブラリとかはいいとは思います。 画像だらけでアプリの.gitが肥大しているものだとちょっとやめたほうがいいかなと思ったりします。

.git*

いらないものを次々減らして行ったら下記のようになりました。 でも1.91GBある。。。

REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
<none>                   <none>              23180c065f92        5 minutes ago        1.91 GB
<none>              <none>              5a62078ba01c        9 minutes ago        4.558 GB
python              2.7                 d833e0b23482        20 hours ago         747.9 MB