掲題の通りです.
tl;dr
cwdとはcurrent working directoryです.
docker build
ひいてはdocker-compose build
は,cwdをdocker daemonに送信する- これをcontextと呼ぶ
- contextにあるファイルやディレクトリこそが,
Dockerfile
で操作できるそれそのものである - 言い換えると,contextに入っていないファイルやディレクトリは,
Dockerfile
での操作の対象にできず,すなわちADD
できない
- cwdに巨大なディレクトリがある場合,docker daemonに送信されるデータもまた巨大になり,レスポンスがしばらく帰らなくなる
docker-compose
はこのとき,びっくりしてしまうのか,docker daemonが死んでいると判定してdocker compose build
を中止する- DBといったコンテナがあり,そのpermanent storageがcwdにある場合は,
.dockerignore
にそのディレクトリを登録してcontextから除外する必要がある
tldrで言い切ってしまいました.よかったですね.