env変数がドッカーから使用できるかどうか疑問に思っていますか?この理由は、タグ付けを制御するためです。例えば、私は私のDockerfileにこのラインを持っていると言う:ドッカーFROMで変数を使用できますか?
From myApp
私が欲しいものはこれです:
From myApp:${VERSION}
私は、このためのドッキングウィンドウの画像を構築するためにdocker build . myApp --build-arg VERSION=9
プロセスを言うことができますこの方法アプリは同じです。私はDockerfilesを別の基本イメージを使用するだけのものにしたいとは思っていません。バージョン9をビルドする場合、基本イメージのバージョン9を使用する必要があります。
しかし、このアプローチにはどうすれば古いバージョンをビルドできますか?バージョン8を再構築したい場合は、最新版をベースとして使用します。つまり、バージョン9をベースとして使用しないということですか?イメージとベースイメージを同期させた状態に保つための簡単なメカニズムが必要です。 – CodyK
私はあなたがあらゆる種類のバージョンと組み合わせを維持し、サポートしたいと思うことを理解できます。これは、あなたの画像の中に「非下位互換性のある」機能(例えば、新しいプログラムパラメータ。前に述べたテンプレートメカニズムは、現在、それを処理するのが最善です。私のアドバイスは、環境に応じて常にバージョンを最小限に抑え、下位互換性のないブランチ・バージョンを使用することです。最新バージョンの画像を改善し、バージョンとブランチの複雑さをチェックし続けるだけで、あなたの努力を集中してください。 – blacklabelops
この特定のユースケースは、ベンダー提供のドッカーファイルから構築されています。ドッキングファイルはまったく変更されませんが、アーキテクチャの性質上、これが必要です。彼らのイメージはドッカーハブにはない。それで、あなたがしなければならないのは、彼らのツールの新しいバージョンをインストールし、スクリプトを実行してイメージを構築することです。次に、それらの画像をベース画像として使用します。アドバイスありがとう。私はそれを念頭に置いておきます。 – CodyK