問題タブ [cache-invalidation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
610 参照

docker - Docker キャッシュの無効化

アルパイン コンテナーで .Net コア アプリをコンパイルしているカスタム Dockerfile で奇妙な問題が発生しています。

さまざまな構成を試してみましたが、役に立ちませんでした。最終的なFROM命令を実装すると、キャッシュは常に無効になります (それとその下のすべてをコメントアウトすると、キャッシュは正常に機能します)。ファイルは次のとおりです。

何か案は?ヒント?チップ?驚くほど明らかな間違い?各レイヤーをチェックしましたが、COPY . ./命令は期待するファイルのみをコピーし、ビルド間で変更されることはありません。

また、最後の FROM 命令 (およびその他の関連する行) を削除すると、キャッシュは完全に機能しますが、最終的なイメージ サイズは明らかにベースmicrosoft/dotnet:2.1-aspnetcore-runtime-alpine3.7イメージ (172Mb 対 1.8Gb) よりもかなり大きくなります。COPYの後の命令をコメントアウトしてみましたFROMが、キャッシュの無効化には影響しません。以下は期待どおりに機能します。

.dockerignore 以下:

最後の情報: docker-compose を使用してコンテナーを構築しています。具体的には を実行してdocker-compose build myservicenameいますが、イメージを構築してdocker build -f src/MyAssembly/Dockerfile -t MyImageName .も同じ結果が得られます。