Docker イメージの結合: 複数のイメージを 1 つのレイヤーに結合する
複数の Docker イメージを 1 つの統合イメージに結合することは、Docker でネイティブにサポートされていない機能です。ただし、オープン ソースの貢献者によって開発された DockerMake ツールは、このニーズに対処するソリューションを提供します。
DockerMake は、YAML 構成ファイルを使用してターゲット イメージの構成を定義します。このファイルには、最終イメージに寄与する基本イメージと、必要なビルド手順が指定されています。 Java と MySQL の両方の機能を含むイメージを作成するシナリオ例を考えてみましょう。
DockerMake を使用すると、次の構造を持つ DockerMake.yml ファイルを確立できます:
specificAB: requires: - genericA - genericB genericA: requires: - customBase build_directory: [local directory path] build: | # Dockerfile commands for genericA # e.g., ADD installA.sh, RUN ./installA.sh genericB: requires: - customBase build: | # Dockerfile commands for genericB # e.g., RUN apt-get install -y genericB, ENV PATH=$PATH:something customBase: FROM: debian:jessie build: | # Dockerfile commands for customBase # e.g., RUN apt-get update && apt-get install -y build-essentials
DockerMake を使用して specificAB イメージをビルドするには、次のコマンドを実行するだけです:
docker-make specificAB
このコマンドは、YAML 構成に基づいて必要な Dockerfile を生成し、ビルド プロセスを実行し、最終的に Java と MySQL の両方の機能を包含する統合イメージを作成します。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3