ドッカーのコンテナでファイルのタイムスタンプのみを変更(touch'ed)するのはどうですか? UFS(または使用されるvarianet)は、ドッカーコンテナレイヤーにファイルコピーを作成するか、このシナリオをより効率的に処理できますか?ファイルはドッキング・コンテナ・レイヤーにコピーを作成しますか?
dockerのコンテキストでのファイルタッチの影響に関する情報を特定し、このシナリオを最適に管理してレイヤ上の累積ファイルストレージサイズフットプリントを削減する方法を検討します。
ドッカーのコンテナでファイルのタイムスタンプのみを変更(touch'ed)するのはどうですか? UFS(または使用されるvarianet)は、ドッカーコンテナレイヤーにファイルコピーを作成するか、このシナリオをより効率的に処理できますか?ファイルはドッキング・コンテナ・レイヤーにコピーを作成しますか?
dockerのコンテキストでのファイルタッチの影響に関する情報を特定し、このシナリオを最適に管理してレイヤ上の累積ファイルストレージサイズフットプリントを削減する方法を検討します。
これは、実験的に答えるのは簡単な質問です。コンテナ
docker run -it ubuntu
タッチ何かと終了:
[email protected]:/# touch /bin/ls
[email protected]:/# exit
保存新しいイメージとしてコンテナ:
$ docker commit 914f5453af3c testimage
エクスポートローカルディレクトリに画像レイヤー:
をコンテナを開始$ mkdir testimage
$ docker save testimage | tar -C testimage -xf-
これはあなたのような何かに見えるディレクトリ与える:
$ cat testimage/repositories
{ "testimage":{ "最新": "6d1bde67c5695c66882fd71951376e176ba908fc9a560bd8eeb07c4b4797da89"}}最上層を見つけるために
$ ls testimage
15c6fddb70d1d281b7c20cdd5a54be3379c4c282a3e9ba2ae27c79a655ca9ed6
46bda337e95a0163468d9daa3a13ba104507f68186a09cdb2892b20030aeb530
63c22c7d4e3cd1a04ada1a24dd84837c1ce0c445bb48b75ed45f84250146459f
6d1bde67c5695c66882fd71951376e176ba908fc9a560bd8eeb07c4b4797da89
7c05062524dd680596681fb193b3096fcd775da2c0e7e66e0ad580850ee3a973.json
96ab7e8335a8dff5ed0144a46ddbe6ab6c1e76011670cb54efc515c46ea6b09b
fbe2d84b180c3f84eb15754cf95e1a6359a84ed3c6e2f6869f0a2015343611fc
manifest.json
repositories
repositories
を見てその層の内容で
ルック:
$ tar -tf testimage/6d1bde67c5695c66882fd71951376e176ba908fc9a560bd8eeb07c4b4797da89/
layer.tar
bin/
bin/ls
root/
root/.bash_history
そして、touch
を実行した結果、最上位のレイヤーに/bin/ls
のコピーがあることがわかります。
ありがとうございます。私はレイヤーをエクスポート&レビューするのに十分な知識がありませんでしたが、ラップトップでサンプルを追跡し、チェックを再作成しました。とても有難い。 –