ドッカーとは一体何なのでしょうか?私の単純な理解を話します

なぜDockerがあるのか

製品は、開発から発売、オペレーティング システム、オペレーティング環境、アプリケーション構成へと進みます。開発+運用・保守の連携では、多くのことに気を配らなければなりませんが、これは多くのインターネット企業が直面する課題でもあり、特にバージョンを重ねるごとに、異なるバージョン環境の互換性は運用上非常に重要になります。および保守員によるテスト。

環境構築はとても面倒で、マシンを変えるとまた最初からやり直す必要があり、時間と手間がかかります。多くの人は、問題を根本的に解決して、ソフトウェアを環境にインストールできるだろうかと考えています。

つまり、インストールするときは、元の環境を正確にコピーします。開発者は Docker を使用することで、共同コーディング時の「私のコンピュータで動作するか」という問題を解消できます。

Docker がこれほど急速に発展した理由は、これに対して標準化されたソリューションを提供したためでもあります。

サーバー上にアプリケーションの動作環境を構築する前に、Java/tomcat/mysql/jdbcドライバーパッケージなどの各種ソフトウェアや、各種ミドルウェアmqtt、zookeeperなどをインストールする必要があります。これらを設定しますか? 言うまでもなく、まだクロスプラットフォームではありません。

これらの環境を Windows にインストールした場合、Linux に到達したときに再インストールする必要があります。また、OSを越えない場合でも、同じOSを搭載した別のサーバにアプリケーションを移植することは、繰り返しデプロイメントに相当し、非常に面倒である。

サーバーは数台あっても大丈夫ですが、リーダーがある日タスクを手配すると、運用保守の同僚が40台のサーバーにアプリケーションを展開し、それぞれを再構成して環境を構築する必要があり、忙しすぎませんか?

構成済みのファミリー バケットのセットがあり、各サーバーで通常どおり実行して使用できると仮定すると、さらに便利になります。ソフトウェアのコーディング、開発、テストを経て、出力がプログラムになると伝統的に考えられています。

これらのプログラムをスムーズに実行するには、開発チームは、運用および保守チームがアプリケーションを展開できるように、完全な展開ファイルも準備する必要があります。開発は、運用および保守の展開チームに、すべての構成ファイルとすべてのソフトウェア環境を使用するように明確に指示する必要があります。

しかし、それでも、展開の失敗は依然として頻繁に発生します。Docker イメージの設計により、Docker は過去の古い概念を打ち破ることができます。イメージを介したオペレーティング システムのコアを除いて、アプリケーションの実行に必要なシステム環境は下から上までパッケージ化されており、アプリケーションのシームレスなクロスプラットフォーム操作を最後まで実現します。

Dockerの基本概念

01 Dockerとは何ですか?

①DockerはGo言語をベースにしたクラウドオープンソースプロジェクトです。

②Docker の主な目標は、「どこでも、あらゆるアプリを構築、出荷、実行する」であり、あらゆるプラットフォームであらゆるアプリケーションを構築、インストール、実行できます。

つまり、パッケージ化、配布、展開、運用などのアプリケーション構築のライフサイクルを管理することで、ユーザーのAPPとその動作環境を「一度カプセル化すればどこでも実行できる」ようになります。

③Linuxコンテナ技術の登場により、このような問題が解決され、それをベースにDockerが開発され、Dockerコンテナ上でアプリケーションが動作し、どのOS上でもDockerコンテナが一貫して動作するため、クロスプラットフォーム、クロスサーバが実現します。

環境を一度設定するだけで、ワンクリックで別のマシンに展開できるため、操作が大幅に簡素化されます。

一言で言えば、コンテナ仮想化テクノロジは、動作環境と構成ソフトウェアコンテナの問題を解決し、継続的統合を促進し、全体的なリリースに貢献します。

02 Docker では何ができるのですか?

①Dockerと従来の仮想化手法の違い:

従来の仮想マシン テクノロジは、ハードウェアのセットを仮想化し、その上で完全なオペレーティング システムを実行し、その後、システム上で必要なアプリケーション プロセスを実行します。

コンテナ内のアプリケーション プロセスは、ホスト マシンのカーネル上で直接実行されます。コンテナは、従来の仮想マシンよりも軽量であるため、独自のカーネルを持たず、ハードウェア仮想化もありません。

各コンテナは互いに分離されており、各コンテナは独自のファイルシステムを持っているため、コンテナ間の処理は相互に影響を与えることなく、コンピューティングリソースを区別することができます。

②従来の仮想マシンのデメリット:

多くのリソースが占有され、冗長な手順が多く、起動が遅い。

③Dockerのメリット:

軽量で第 2 レベルの高速起動。

シンプルで使いやすい。

標準的で統一されたパッケージング/展開/実行スキーム。

このイメージは増分配布をサポートしており、展開が簡単です。

構築が簡単で、自動テストや継続的統合に適しています。

03 Dockerはどこでダウンロードできますか?

Docker 公式 Web サイトまたは Docker 中国語 Web サイト、自習、次のコミュニティ バージョンでも問題なく、無料で使用できます。

04 Dockerの3要素

鏡像、コンテナ、倉庫、これら 3 つの概念をどのように理解すればよいでしょうか?

①Mirror は、Docker コンテナの作成に使用できる読み取り専用のテンプレートであり、1 つのイメージから多数のコンテナを作成できます。

②コンテナとはミラーによって作成されるインスタンスであり、起動、開始、停止、削除が可能です。各コンテナは、相互に分離されセキュリティが確保されたプラットフォームであり、Linux 環境の簡易版と考えることができます。

③ウェアハウスは画像ファイルを一元的に保管する場所であり、ウェアハウスとウェアハウス登録サーバーは異なります。多くの場合、ウェアハウス登録サーバーには複数のウェアハウスが保存されており、各ウェアハウスには複数のイメージが含まれており、各イメージには異なるラベルが付いています。

ウェアハウスはパブリック ウェアハウスとプライベート ウェアハウスに分かれており、最大のパブリック ウェアハウスは https://hub.docker.com/ で、ユーザーがダウンロードできる大量の画像が保存されています。国内のパブリック ウェアハウスには Alibaba Cloud、Netease Cloud などが含まれます。待って。

Docker 自体は、キャリアまたは管理エンジンを実行するコンテナです。アプリケーションと構成の依存関係をパッケージ化して、納品可能なオペレーティング環境を形成します。このパッケージ化されたオペレーティング環境は、イメージ イメージ ファイルのようなものです。このイメージ ファイルを通じてのみ Docker コンテナーを生成できます。

イメージ ファイルはコンテナのテンプレートとみなすことができ、Docker はイメージ ファイルに従ってコンテナのインスタンスを生成し、同じイメージ ファイルから同時に実行される複数のコンテナ インスタンスを生成できます。

イメージ ファイルによって生成されたコンテナ インスタンスはそれ自体がファイルであり、イメージ ファイルになります。

コンテナはサービスを実行します。必要に応じて、コンテナである Docker クライアントを通じて、対応する実行インスタンスを作成できます。

ストレージに関しては、大量の画像が配置される場所であり、画像をストレージに公開し、必要に応じてストレージから取得することができます。

最後に:以下の完全なソフトウェア テスト ビデオ チュートリアルが整理されてアップロードされており、必要な友人は自分で入手できます[100% 無料保証]

ソフトウェアテストの面接ドキュメント

私たちは高給の仕事を見つけるために勉強しなければなりません。次の面接の質問は、アリ、テンセント、バイトなどの一流インターネット企業からの最新の面接資料であり、一部のバイトの上司が権威ある回答をしています。このセットを完了してください。面接資料は誰もが満足のいく仕事を見つけることができると信じています。

全データ取得

おすすめ

転載: blog.csdn.net/wx17343624830/article/details/131326416