[解決済み] apk add --virtualコマンドの.build-depsとは何ですか?
2022-04-20 05:27:35
質問
とは何ですか?
.build-deps
を以下のコマンドの中に入れてください。 アルパインのドキュメントに説明がありません。 これはあらかじめ定義されているファイルなのでしょうか? 多くのDockerfilesで参照されているのを見かけます。
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
解決方法は?
ドキュメントをご覧いただくと
-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やその他の必要なパッケージは仮想パッケージにインストールし、その依存関係やすべてをこの仮想パッケージ名から削除することができるんだ。以下は使用例です。
RUN apk add --virtual mypacks gcc vim \
&& apk del mypacks
次のコマンドは、最初のコマンドでインストールされた18個のパッケージをすべて削除します。
dockerでは、これらは1つのコマンドとして実行する必要があります。
RUN
コマンドを使用します(上図)。そうしないと、画像サイズを縮小できません。
関連
-
[解決済み] docker: ドライバがエンドポイントウェブサーバの外部接続のプログラミングに失敗しました。
-
[解決済み] ドッカーイメージのアイコンを作成する
-
ドッカーサーバーがHTTPSクライアントに対してHTTPレスポンスを返す問題処理
-
docker サーバーが HTTPS クライアントに HTTP 応答を返した
-
docker共通コマンドのまとめ
-
企業向けWeChatアラート監視のためのPrometheus+Grafana+AlertmanagerのDockerインストール
-
docker パーミッションが拒否されました。
-
Centos7 5つのステップでDockerをインストールし、公式Dockerイメージにアクセスできない問題を解決します。
-
[解決済み] Dockerfileの'COPY'と'ADD'コマンドの違いは何ですか?
-
[解決済み] Dockerでイメージのクリーンビルドを強制する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Dockerのビルドコンテキスト外のファイルをインクルードする方法とは?
-
[解決済み] docker-compose down default_network エラー
-
[解決済み] 接続するには、Dockerクライアントを昇格して実行する必要があります。
-
[解決済み] ドッカーコンテナの終了ステータス255は何を意味するのですか?
-
docker 環境に opencv をインストールします ImportError: libGL.so.1: cannot open shared object file: そのようなファイルやディレクトリはありません
-
httpコード中にdocker registry apiのインタラクションを呼び出す コード詳細
-
Dockerコンテナ共通のトラブルシューティングと対処法
-
接続中にDocker useエラーが発生しました。このエラーは、Docker デーモンが実行されていないことを示す可能性があります。
-
docker make image apt-get install file error debconf: unable to initialize frontend: ダイアログ
-
ドッカーコンテナの状態がExitと表示される(1)