2017-09-14 5 views
8

次のコマンドで.build-depsとは何ですか?私はアルパインの文書で説明を見つけることができません。これはあらかじめ定義されたファイルですか?これは多くのDockerfilesで参照されています。apk add --virtualコマンドの.build-depsとは何ですか?

RUN apk add --no-cache --virtual .build-deps \ 
gcc \ 
freetype-dev \ 
musl-dev 

RUN pip install --no-cache-dir <packages_that_require_gcc...> \ 

RUN apk del .build-deps 

答えて

16

あなたがドキュメントに表示された場合それはあなたがパッケージをインストールするときに、これらのパッケージはグローバルパッケージに追加されていないことを意味する何

-t, --virtual NAME  Instead of adding all the packages to 'world', create a new virtual package with the listed dependencies and add that to 'world'; the 
          actions of the command are easily reverted by deleting the virtual package 

。そして、この変更は簡単に元に戻すことができます。ですから、プログラムをコンパイルするにはgccが必要ですが、プログラムがコンパイルされるとgccは必要ありません。

gccやその他の必要なパッケージを仮想パッケージとそのすべての依存関係にインストールすることができ、すべてがこの仮想パッケージ名を削除できます。以下は、最初のコマンドでインストール

apk add --virtual mypacks gcc vim 
apk del mypacks 

すべての18個のパッケージは

+0

は明らかに私はブラインドドキュメントでこれを見ていないよ、次のコマンドで削除される使用例であるが、これは、それはだ理由として偉大な説明でした重要。本当にありがとう。 – gdbj

関連する問題