次の方法で、2 つの異なるマシンで Docker イメージのレイヤーを再利用したいと考えています。
- ビルドイメージ (1)
- イメージをレジストリにプッシュする (1)
- レジストリからイメージを取得する (2)
- 同じ docker イメージをビルドし、プルされたイメージからレイヤーを再利用する (2)
したがって、
マシン 1 :
この次のイメージをビルドします。
FROM node:13-slim
COPY package.json package.json
- 次のコマンドでこのイメージをビルドします。
docker build . -t <registry>/test-docker-image:latest
- イメージをレジストリにプッシュします。
docker push <registry>/test-docker-image:latest
マシン 2
- レジストリからイメージをプルします。
docker pull <registry>/test-docker-image:latest
このマシンで実行するdocker build .
と、プルされたイメージからレイヤーが再利用されません。
でプルされたイメージからレイヤーを再利用する方法はありdocker build
ますか?
同様の問題:
似たようなことを説明している GitHub の次のスレッドがありますが、これは と の間docker build
でレイヤーを共有する際の問題について説明していdocker-compose build
ます。https://github.com/docker/compose/issues/883