0

docker と最小限のイメージを作成する方法について学習しているときに、次のコマンドに出くわしました:-

tar cv --files-from /dev/null | docker import - scratch

これにより、最小限の Docker イメージが作成されます。

するとどうなるか理解できませんtar cv --files-from /dev/null。端末でこのコマンドを実行すると、出力が得られません。

私がdocker import - scratch一人で走っていると、それは永遠にそこにぶら下がっています。

では、これら 2 つのコマンドの組み合わせはどのように機能するのでしょうか? 私はまだ混乱しており、これがどのように機能し、実際の動作を理解しようとしています。これに関するヘルプ/ガイダンスは本当にありがたいです.

4

1 に答える 1

2

実行tar cv --files-from /dev/nullすると、実際に出力が生成されます。あなたはそれを見ることができません。これを試して:

tar cv --files-from /dev/null | od -a

このtarコマンドは、空の tar アーカイブを生成します。

このdocker import - scratchコマンドは、から tar アーカイブをインポートしstdin、名前を付けますscratch。マニュアルページから:

docker-import - 空のファイルシステム イメージを作成し、tarball の内容 (.tar、.tar.gz、.tgz、.bzip、.tar.xz、.txz) をインポートし、オプションでタグ付けします。

空のアーカイブをフィードしているため、空の Docker イメージが得られます。

于 2016-04-29T04:25:56.413 に答える