Docker(ドッカー)とは、オープンソースのコンテナ型仮想化ソフトウェアです。ソフトウェアコンテナ内のアプリケーションデプロイメントを自動化します。コンテナ技術を採用しており「アプリケーション」や「OS」をパッケージイメージ化することにより極めて集約度の高いITシステムを実現できます。

オープンソースの仮想化ソフト/Dockerとは

Docker(ドッカー)とは、オープンソースのコンテナ型仮想化ソフトウェアです。ソフトウェアコンテナ内のアプリケーションデプロイメントを自動化します。コンテナ技術を採用しており「アプリケーション」や「OS」をパッケージイメージ化することにより極めて集約度の高いITシステムを実現できます。

■関連する比較ページ

「Docker」基本情報

■概要

Docker(ドッカー)とは、オープンソースのコンテナ型仮想化ソフトウェアです。ソフトウェアコンテナ内のアプリケーションデプロイメントを自動化します。

■基本説明

Dockerは、性能面での劣化を極力排除したコンテナ技術を採用しており、アプリケーション/OSをパッケージイメージ化することにより極めて集約度の高いITシステムを実現することができます。

Dockerは、API提供/既存成果物の入手/成果物アップロードなどで、効率よく成果物管理/リユースする仕組みがあります。そして、それらの一連の作業を自動化する仕組みも備わっています。

クラウド基盤ソフトウェアに比べて、導入のハードルが比較的低く、簡単に試すことができます。そのため、多くの開発者やIT部門の管理者での利用が急激に広まっています。

コンテナ管理の手軽さ/インスタンス操作の高速性は、クラウドサービス/ビッグデータ基盤などを管理するためのIT基盤として高く評価されています。

Dockerは、コンテナ型仮想化ソフトウェアのデファクトスタンダードになる勢いで、中小規模からエンタープライズ規模まで、さまざまな領域で幅広く利用されています。

■「コンテナ型仮想化」とは

Dockerは「コンテナ型仮想化」と呼ばれる仮想化技術を利用しています。

1つのOSにコンテナといわれる「独立したサーバと同様の振る舞いをする区画」を複数作り、それを個別のユーザ/サービスに割り当てます。同じOS上に構築するため、すべてのコンテナは同じOSしか使えません。

コンテナには、個別にCPU/メモリ/ストレージなどを割り当てる必要がないため、システムリソースのオーバーヘッドが少なくて済みます。そのため、同じ性能のハードウェアならば、より多くのコンテナを作ることができます。

■Dockerの構成

一般的に「Docker」と呼ばれているコンテナ管理技術は「Docker Engine」が正式名称となっています。

「Docker Engine」に、アプリケーション開発/配布用Webサービス「Docker Hub」、API、サードパーティエコシステムなどを含めたプラットフォーム全体の総称が「Docker」となっています。

■経緯

DotCloud社(現 Docker Inc.)が、開発者/IT部門をターゲットとしたアプリケーションやOSの開発/配備を行うための基盤ソフトウェアとして開発し、2013年にリリースしました。

このソフトウェアは、オープンソースソフトウェア「Docker」として公開され、その使い勝手の良さから、多くの開発者/IT部門の管理者で瞬く間に利用されていきました。

■オフィシャルサイト情報

オフィシャルサイト

→Docker →Docker Engine

ライセンス情報

Dockerのライセンスは「Apache License Version 2.0」です。

詳細について、こちらを参照ください。
→GitHub →docker/docker-ce →LICENSE

ダウンロード

→Docker Hub →Docker CE

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「gVisor」など。

「Docker」の主な特徴

■インフラのコード化(Infrastructure as Code)

Dockerはコンテナ構成を、すべて「Dockerfile」というテキストファイルに記述でき、その構成を自動生成することができます。「Infrastructure as Code(インフラのコード化)を実践するプラットフォームとして利用できます。

■不変のインフラ構成(Immutable Infrastructure)

ITキーワードとして「Immutable Infrastructure(不変のインフラ構成)」というものがあります。アプリ実行環境を一度限りの使い捨てとして、環境を何度も作り直すことによって構成変更を行い、アプリの実行環境をより管理しやすくしていく考え方です。

Dockerのイメージ自体は起動されても更新は保存されません。明示的な保存(コミット)をしなければコンテナ破棄時に変更分が消えてしまいます。Dockerではこの仕様を、AUFSというファイルシステムを利用して実現しています。

Dockerには、「Immutable Infrastructure」を実現するために必要な機能がそろっているため、実際の環境に適用できます。

■オープンソース

Dockerには、新しい独自技術は、ほとんど使われていません。コンテナ管理に必要となる既存のOSSを組み合わせて、コマンドライン/REST APIで効率良くコンテナ管理ができるようになっている点が、広く支持され、注目されている理由となっています。

Docker最新TOPICS

【OSS】RedCode Labs、LinuxDockerイメージ変換ツール「easyWSL」リリース---WSLディストリビューションに変換(2021年08月17日 14:30)

サイバーセキュリティ企業「RedCode Labs」はオープンソースツール「EasyWSL」をリリースした。 「easyWSL」とは 事実上すべての「LinuxディストリビューションDockerイメージ」を「Windows Subsystem for Linux(WSL)」で起動するように変換できるツール。...

イベント情報

セミナー講演資料

無料資料プレゼント

2021/03/04 セキュリティDAYS Keyspider資料

講演資料を見るには、 プライバシーポリシーに同意して、送付先メールアドレスをご入力しご請求ください。

またご入力いただきました情報は、当該資料の作成・提供企業とも共有させていただき、当社及び各社のサービス、製品、セミナー、イベントなどのご案内に使用させていただきます。

本資料を見るには次の画面でアンケートに回答していただく必要があります。



セミナー講演資料公開中

【企業ネットワーク向け】ローカルブレイクアウト、適用できないSaaSはありませんか?通信速度や運用に課題はありませんか? 〜LBOに最適なネットワーク機器や管理ツールによる解決策をご提案〜

ハイブリッドワークにおける電話の新しいカタチ ~セールスプロセスを最適化する次世代クラウドビジネスフォン~

ネットワークエンジニアの減少で負担が増える、企業のネットワーク運用管理 〜監視と管理の統合により、さらなる運用効率化を実現〜

  • オープソース書籍(サイド)
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter