2017-01-20 1 views
28

ドッカー1.13新しい- スカッシュパラメータが追加されました。新しいDocker - スカッシュの仕組みはどうですか

私は自分の画像のサイズを縮小し、自分のレイヤーにある秘密のファイルを "隠す"ことができるようになりました。

ここで、--squashパラメータを使用する場合と使用しない場合のビルドとの違いを確認できます。スカッシュなし

enter image description hereスカッシュ私の質問に今

enter image description here

付き。

私は私の最初の層に秘密のファイルを追加した場合は、その後、私の層に秘密のファイルを使用して、最後に第三層に私の秘密のファイルを削除し、その後で構築 - -squashフラグ。

秘密のファイルを取得するには、今すぐとなりますか?私は私の最初の層に秘密のファイルを追加した場合

答えて

37

、その後、 で私の第二の層を秘密ファイルを使用し、最後に--squashフラグと第三 層に私の秘密のファイルを削除して構築。

ここで秘密ファイルを取得する方法はありますか?

回答:あなたのイメージ秘密のファイルを持っていません。

方法 --squash作品:ビルドが完了

たら、ドッカーは、単一の新しいレイヤーや参照、すべての親の層にそれぞれの層からの差分をロードし、新しいイメージを作成します。

言い換えれば、潰れたとき、Dockerはビルドによって生成されたすべてのファイルシステム層を受け取り、それらを単一の新しいレイヤーに崩壊させます。

最小限のコンテナイメージを作成するプロセスを簡素化できますが、イメージを移動するとオーバーヘッドが若干高くなることがあります(イメージ間で縮んだレイヤーを共有できなくなるため)。 Dockerは個々のレイヤーをキャッシュして、その後のビルドを高速化します。

この機能は、新しく構築されたすべてのレイヤーを1つのレイヤーに縮小し、スクラッチにはならないことに注意してください。

サイドノート:

ドッカー1。13は、--compressフラグを使用してCLIからデーモンに送信されるビルドコンテキストを圧縮する機能もサポートしています。これにより、送信されるデータの量を減らすことによってリモート・デーモンでのビルドを高速化します。

Docker 1.13現在、この機能は実験的なものです。