Docker、LXD、LXCの違いは何ですか[非公開]


164

Docker、LXD、およびLXCの違いは何ですか。同じサービスを提供していますか、それとも異なるサービスを提供していますか。


1
これが有用であることがわかりました。最新かつ最高の情報。 people.canonical.com/~kirkland/...
Ijazアフマド・ハーン

infoworld.com/article/3204171/linux/…で非常に良い説明があります。これは、と述べたAlthough Docker started out as an open source project to build specialized LXC, it later morphed into its own container runtime environmentリンクの詳細
アリレザFattahi

回答:


133

いいえ、LXC、Docker、およびLXDはまったく同じではありません。要するに:

LXC

LinuX Containers(LXC)は、単一の制御ホスト(LXCホスト)で複数の分離されたLinuxシステム(コンテナー)を実行するためのオペレーティングシステムレベルの仮想化方法です。

https://wiki.archlinux.org/index.php/Linux_Containers

低レベル...

https://linuxcontainers.org/

Docker

  • Docker、Inc
  • LXCコンテナを利用したコンテナシステム
  • 次のことができます:http : Build, Ship, and Run Any App, Anywhere //www.docker.com

LXD

Docker対LXD

  • Dockerはアプリのデプロイを専門としています
  • LXDは(Linux)仮想マシンの展開を専門としています

Docker対LXDのインフォグラフィック

ソース:http : //linux.softpedia.com/blog/infographic-lxd-machine-containers-from-ubuntu-linux-492602.shtml

当初:https : //insights.ubuntu.com/2015/09/23/infographic-lxd-machine-containers-from-ubuntu/

マイナーテクニカルノート



12
ドッカー2014年以来、ボンネットの下にLXCを使用していない:blog.docker.com/2014/03/...
infomaniac

68

この画像は、それらの主な違いを理解するのに役立ちます。

lxc xドッカー

それらのすべてに共通しているのは、これら3つの技術すべてがコンテナに関連しているということです。

コンテナは、物理ハードウェアのエミュレーションで仮想マシンをセットアップする必要のない軽量の仮想化メカニズムです。Linuxでは、彼らが共通しているの使用カーネル機能です:cgroupsnamespaces(ipc, network, user, pid, mount)。また、特権のないコンテナを作成し、などのセキュリティ機能と統合することにより、より安全な環境を作成しようとしますselinux。これらのテクノロジーはAPIをエクスポートして、他のソフトウェアとより適切に統合します。

LXDおよびLXC

これら2つは同じファミリーを統合します。

  • lxc:Linuxカーネル封じ込め機能用のユーザースペースインターフェイス。これは、カーネルの名前空間、ApparmorおよびSELinuxプロファイル、Chroots、カーネル機能、およびその他のすべてのカーネル関連のものを管理する人です。
  • lxd:コンテナの「ハイパーバイザー」です。デーモン(lxd)、コマンドラインインターフェイス(lxc)、およびOpenStackプラグインで構成されます。この男はlxcに柔軟性と機能を提供するために開発されましたが、まだ内部で使用されています。

基本的に、自己完結型のOSユーザーペースは、その分離されたインフラストラクチャで作成されます。lxcは、DockerよりもネットワーキングおよびストレージのOS機能に直接基づいています。

ユーザー空間とカーネルを分離した多数の仮想マシンを作成しますが、それらは分離されたカーネルを実行していないため完全な仮想マシンではなく、同じ理由で準仮想化もされていません。

ここではCanonicalがメインスポンサーであり、オラクルもこのテクノロジーに工数を投資しています。

Docker

いくつかの違いがありますが、最大のものは、ベースの「ユーザースペースイメージ」ではなく自己完結型のファイルシステムでアプリケーションをラップするエンジンです。アイデアは、アプリとベース画像を含めて、アプリがエンジン内の単一プロセスであるという印象を作成することです。Dockerはカーネルと通信するための基盤としてlxcテクノロジーを使用していましたが、今日では独自のライブラリlibcontainerを使用しています。

ファイルシステムはDockerの抽象化ですが、lxcはファイルシステムの機能を直接使用します。ネットワークも抽象化ですが、lxcを使用すると、IPアドレスとルーティング構成をより簡単に設定できます。一部の「App Storeのような」サイトは、Microsoft、Amazon、Vmware、IBM、およびその他のプレーヤーによって管理されています。

Docker。INC。はここのメインスポンサーです。Vmware このテクノロジーに投資しています。

関連するコンテナ技術:

これらは、Linuxが持つ他のコンテナーテクノロジーです:OpenVZおよびLinux-VServer

関連するもの:



うん。これは、Ubuntu wada-wada上のすべてのzfsに関係するため、かなり新しいものです。そして、それはプレゼンテーションです。「それよりも優れている」、「最速のテクノロジー」、「Yよりもスケーラブルである」などの世界があるPDFやPPTに常に注意して

5
Canonicalから出てくる製品にかなり懐疑的になりました。彼らは、彼らが何であるかではなく、彼らが何であるかを宣伝する傾向があります。多くの場合、その「可能性がある」はまだ数年先です。
orodbhen

小文字のlxcを使用する代わりに、これはliblxcへの参照である必要があります。そして限り、ツーリングが懸念しているとして、それはその後、LXD(ちょうどデーモン)liblxc> = 2.0のためにのみ利用可能です3.xの通過1.xでは参照できるlxcの後継であるLXDクライアントプログラムイストlxc-*-named LXC 1.xツール。
0xC0000022L
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.