Docker は 2013 年にリリースされました。ソース コードは Github でホストされています。Go 言語に基づいており、Apache2.0 プロトコルに準拠し、オープン ソースです。LXC オープンに基づく高度なコンテナ エンジンです。 PaaS プロバイダー dotCloud が提供する、コンテナーを使用してアプリケーションを簡単に作成、デプロイ、実行するためのツールです。
このチュートリアルの動作環境: linux7.3 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。
docker はいつ登場しましたか?
Docker は、Linux および Windows 上で実行され、コンテナーの作成、管理、オーケストレーションに使用されるソフトウェアです。
Docker は、GitHub で開発された Moby オープン ソース プロジェクトの一部です。
サンフランシスコにある Docker Company は、Moby オープンソース プロジェクト全体の保守管理者です。 The Docker Company は、サポート サービスを含む商用バージョンの Docker も提供しています。
Docker Company
Docker Company はサンフランシスコにあり、フランス系アメリカ人の開発者兼起業家である Solumon Hykes によって設立されました。そのロゴは下の図に示されています。
Docker ロゴ
興味深いことに、Docker 社はもともと dotCloud プロバイダーと呼ばれる Platform-as-a-Service (PaaS) でした。
基盤となるテクノロジーの観点から見ると、dotCloud プラットフォームは Linux コンテナー テクノロジーを利用しています。これらのコンテナの作成と管理を容易にするために、dotCloud は後に「Docker」と名付けられる一連の内部ツールを開発しました。こうして Docker が誕生しました。
2013 年、dotCloud の PaaS ビジネスはうまくいっておらず、同社は新たな突破口を模索する必要がありました。そこで彼らは、Ben Golub を新しい CEO として採用し、社名を「Docker」に変更し、dotCloud PaaS プラットフォームを放棄し、「Docker とコンテナ テクノロジーを世界に宣伝する」という使命を持って新たな旅を始めました。
今日、Docker は革新的なテクノロジー企業として広く認識されており、その市場価値は約 10 億ドルと言われています。 Dockerは複数回の資金調達ラウンドを通じてシリコンバレーのベンチャーキャピタル数社から総額2億4000万ドル以上の投資を集めている。
資金調達のほぼすべては、会社が「Docker」に名前を変更した後に行われました。
ヒント: 「ドッカー」という言葉は、港湾労働者 (Dock Worker)、つまり船に荷物を積み降ろす人を意味するイギリスの口語に由来しています。
Docker ランタイムとオーケストレーション エンジン
ほとんどの技術者が Docker について話すとき、主に Docker エンジンのことを指します。
Docker Engine は、コンテナーを実行およびオーケストレーションするためのインフラストラクチャ ツールです。 VMware 管理の経験がある読者は、これを ESXi と比較することができます。
ESXi は仮想マシンを実行するコア ハイパーバイザーであり、Docker Engine はコンテナを実行するコア コンテナ ランタイムです。
他の Docker 企業またはサードパーティ製品は、Docker エンジンを中心に開発および統合されています。
以下の図に示すように、Docker エンジンが中心となり、Docker エンジンのコア機能をベースに他の製品が統合されています。
Docker エンジンを中心に開発および統合された製品
Docker エンジンは、Docker Web サイトからダウンロードするか、GitHub のソース コードに基づいて構築できます。 Linux と Windows では、オープン ソース バージョンと商用バージョンの両方が利用できます。
Docker エンジンには、Enterprise Edition (EE) と Community Edition (CE) の 2 つの主要なバージョンがあります。
Enterprise Edition と Community Edition は四半期ごとに安定バージョンをリリースします。 Community Edition には 4 か月のサポートが付属し、Enterprise Edition には 12 か月のサポートが付属します。
Edge 経由で月次バージョンを発行します。
2017 年の第 1 四半期以降、Docker のバージョン番号は、Ubuntu などのプロジェクトと同様に、YY.MM-xx 形式に従います。たとえば、2018 年 6 月にリリースされた最初のコミュニティ バージョンは 18.06.0-ce でした。
推奨される学習: 「docker ビデオ チュートリアル 」
以上がdocker はいつ登場しましたか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

LinuxでDockerを使用するためのベストプラクティスには以下が含まれます。1。ドッケルンコマンドを使用してコンテナを作成および実行します。2。DockerComposeを使用してマルチコンテナーアプリケーションを管理します。3。定期的にクリーニングされていない画像とコンテナ、4。画像サイズを最適化して使用します。これらのプラクティスは、ユーザーがDockerを効率的に使用し、一般的な問題を回避し、コンテナ化されたアプリケーションを最適化するのに役立ちます。

LinuxでDockerを使用すると、開発と展開の効率が向上する可能性があります。 1。Dockerのインストール:スクリプトを使用して、ubuntuにDockerをインストールします。 2.インストールの確認:sudodockerrunhello-worldを実行します。 3。基本的な使用法:NginxコンテナDockerrun-Namemy-Nginx-P8080を作成します:80-Dnginx。 4。高度な使用法:カスタム画像を作成し、DockerFileを使用してビルドして実行します。 5。最適化とベストプラクティス:マルチステージビルドとドッケルコンポスを使用して、DockerFilesを作成するためのベストプラクティスに従ってください。

Docker監視の中核は、主にCPUの使用、メモリ使用、ネットワークトラフィック、ディスクI/Oなどのインジケーターを含む、コンテナの動作データを収集および分析することです。 Prometheus、Grafana、Cadvisorなどのツールを使用することにより、コンテナの包括的な監視とパフォーマンスの最適化を実現できます。

DockerSwarmは、スケーラブルで非常に利用可能なコンテナクラスターを構築するために使用できます。 1)dockerswarminitを使用して群れクラスターを初期化します。 2)swarmクラスターに参加して、dockerswarmjoinを使用します。 3)DockerServiceCreate-Namemy-Nginxを使用してサービスを作成します - Replicas3nginx。 4)dockerstackdeploy-cdocker-compose.ymlmyAppを使用して複雑なサービスを展開します。

DockerとKubernetesを使用して、エンタープライズアプリケーションのコンテナオーケストレーションを実行する方法は?次の手順で実装します。Dockerイメージを作成し、DockerHubにプッシュします。 Kubernetesで展開とサービスを作成して、アプリケーションを展開します。 Ingressを使用して外部アクセスを管理します。パフォーマンスの最適化と、マルチステージの構築やリソースの制約などのベストプラクティスを適用します。

Docker FAQは、次の手順で診断および解決できます。1。コンテナのステータスとログを表示、2。ネットワーク構成を確認します。これらの方法により、Dockerの問題を迅速に配置して固定し、システムの安定性とパフォーマンスを向上させることができます。

Dockerは、DevOpsエンジニアにとって必須のスキルです。 1.Dockerは、アプリケーションとその依存関係をコンテナにパッケージ化することにより、分離と移植性を実現するオープンソースのコンテナ化されたプラットフォームです。 2. Dockerは、名前空間、コントロールグループ、フェデレーションファイルシステムで動作します。 3。基本的な使用には、コンテナの作成、実行、管理が含まれます。 4.高度な使用法には、DockerComposeを使用してマルチコンテナーアプリケーションを管理することが含まれます。 5.一般的なエラーには、コンテナ障害、ポートマッピングの問題、データの持続性の問題が含まれます。デバッグスキルには、ログの表示、コンテナの入り、および詳細情報の表示が含まれます。 6.パフォーマンスの最適化とベストプラクティスには、画像の最適化、リソースの制約、ネットワーク最適化、DockerFileを使用するためのベストプラクティスが含まれます。

Dockerセキュリティの強化方法は次のとおりです。1。-cap-dropパラメーターを使用してLinux機能を制限します。2。読み取り専用コンテナを作成します。これらの戦略は、脆弱性の露出を減らし、攻撃者の機能を制限することにより、コンテナを保護します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
