基本イメージには次のものが含まれます: 1. アプリケーション イメージ (nginx、redis、mongo、mysql、httpd、php、tomcat など); 2. プログラミング言語イメージ (node、oraclejdk、openjdk、python、golang など) .); 3 、空白の画像「スクラッチ」。
このチュートリアルの動作環境: linux5.9.8 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。
通常、イメージをベースとして使用し、それをカスタマイズします。これがベース イメージです。
これは、nginx
イメージ コンテナーを実行してから変更を加えるようなものです。基本イメージは DockerFile で指定する必要があります (FROM は基本イメージを指定するため、FROM は Dockerfile 内で必要な命令であり、最初の命令である必要があります)
たとえば、Java アプリケーション イメージをビルドするには、次のように選択します。アルパイン イメージをベース イメージとして選択するよりも、Oracle JDK イメージをベース イメージとして使用する方が便利です。
Docker Hub には高品質の公式イメージが多数あります。最終的なイメージに最も適したものが見つかります。ターゲット イメージはベース イメージに合わせてカスタマイズされます。
nginx、redis
、mongo
、mysql などの
アプリケーション イメージ があります。
、httpd
、php
、tomcat
など;
には開発に便利な プログラミング言語がありますミラー (node
、oraclejdk
、openjdk
、python
、# など) ##ruby、
golang お待ちください。
オペレーティング システム イメージ (ubuntu、
debian、
centos、
など) もあります。 Fedora、
alpine など、これらのオペレーティング システムのソフトウェア ライブラリは、より広い拡張スペースを提供します。
scratch という名前の 特別なイメージ
もあります。この画像は仮想的な概念であり、実際には存在せず、空白の画像を表します。
scratch を使用する場合 (
FROMScratch)、それはどのイメージにも基づいていないことを意味します。画像の最初のレイヤーとして存在し始めます。
swarm、coreos/etcd などのシステムに基づくことなく、実行可能ファイルをイメージに直接コピーすることは珍しくありません。 Linux で静的にコンパイルされたプログラムの場合、オペレーティング システムがランタイム サポートを提供する必要はありません。必要なライブラリはすべて実行可能ファイルにすでに含まれているため、直接
FROMScratch を実行するとイメージ サイズが大きくなります。コンパクトです。
Go 言語を使用して開発された多くのアプリケーションは、この方法を使用してイメージを作成します。これが、Go がコンテナー マイクロサービス アーキテクチャに特に適した言語であると考える人がいる理由の 1 つです。
推奨される学習: 「docker ビデオ チュートリアル
以上がDocker ベース イメージとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。