Bardzo dobre wyjaśnienie na infoworld.com/article/3204171/linux/… . Wspomniał, że Although Docker started out as an open source project to build specialized LXC, it later morphed into its own container runtime environmentwięcej na ten link
Alireza Fattahi
Odpowiedzi:
132
Nie, LXC, Docker i LXD nie są takie same. W skrócie:
LXC
LinuX Containers (LXC) to metoda wirtualizacji na poziomie systemu operacyjnego do uruchamiania wielu izolowanych systemów Linux (kontenerów) na jednym hoście sterującym (hoście LXC)
Ten obraz pomoże ci zrozumieć główną różnicę między nimi:
Łączy je to, że wszystkie 3 technologie są powiązane z kontenerami.
Kontenery to lekki mechanizm wirtualizacji, który nie wymaga konfigurowania maszyny wirtualnej na emulacji sprzętu fizycznego. W Linuksie mają one wspólne funkcje jądra: cgroups, namespaces(ipc, network, user, pid, mount). Próbują także tworzyć bezpieczniejsze środowiska, tworząc nieuprzywilejowane kontenery i integrując je z funkcjami bezpieczeństwa, takimi jak selinux. Te technologie eksportują interfejsy API w celu lepszej integracji z innymi programami.
lxc : interfejs użytkownika dla funkcji powstrzymywania jądra Linux. To jest facet, który zarządza przestrzeniami nazw jądra, profilami Apparmor i SELinux, chrootami, możliwościami jądra i wszystkimi innymi rzeczami związanymi z jądrem
lxd : to „hypervisor” kontenera. Składa się z demona (lxd), interfejsu wiersza poleceń (lxc) i wtyczki OpenStack. Ten facet został opracowany, aby zapewnić większą elastyczność i funkcje lxc, podczas gdy nadal używa go pod maską.
Zasadniczo tworzona jest niezależna przestrzeń użytkownika systemu operacyjnego z odizolowaną infrastrukturą. lxc opiera się bardziej bezpośrednio na funkcjach systemu operacyjnego dla sieci i pamięci niż Docker.
Tworzysz wiele maszyn wirtualnych, które mają przestrzeń użytkownika i izolację jądra, ale nie są to kompletne maszyny wirtualne, ponieważ nie działają na nich oddzielne jądra, ani nie są parawirtualizowane z tego samego powodu.
Canonical jest tutaj głównym sponsorem, a Oracle inwestuje również wiele godzin pracy w tę technologię.
Ma pewne różnice, ponieważ największy z nich to silnik, który zamyka aplikacje samodzielnym systemem plików zamiast podstawowego „obrazu przestrzeni użytkownika”. Chodzi o to, aby zawierać aplikację i obraz podstawowy, aby stworzyć wrażenie, że aplikacja jest pojedynczym procesem w silniku. Docker wykorzystywał technologię lxc jako podstawę do komunikacji z jądrem, ale dziś korzysta z własnej biblioteki libcontainer .
System plików jest abstrakcją Dockera, podczas gdy lxc bezpośrednio korzysta z funkcji systemu plików. Sieć jest również abstrakcją, a dzięki lxc możesz łatwiej konfigurować adresy IP i konfiguracje routingu. Niektóre witryny typu „App Store” są utrzymywane przez Microsoft, Amazon, Vmware, IBM i inne odtwarzacze.
Doker. INC. Jest tutaj głównym sponsorem. Vmware inwestuje również w tę technologię.
Tak. To całkiem nowe, ponieważ dotyczy wszystkich ZFS na Ubuntu wada-wada. I to jest PREZENTACJA. Zawsze zwracaj uwagę na pliki PDF lub PPT, w których istnieją światy takie jak „lepsze niż to” lub „najszybsza technologia” lub „bardziej skalowalne niż Y” ...
5
Stałem się dość sceptyczny wobec produktów pochodzących z Canonical. Mają tendencję do reklamowania ich takimi, jakimi mogą być zamiast takimi, jakimi są. Często kiedy to „może być” jest jeszcze za wiele lat.
orodbhen
Zamiast używać małych liter lxc, powinno to być odniesienie do liblxc. A jeśli chodzi o oprzyrządowanie, może ono odnosić się do wersji 1.x do 3.x, gdzie lxd (tylko demon) jest dostępny tylko dla liblxc> = 2.0 i lxcjest programem klienckim LXD, który jest następcą lxc-*nazwy Narzędzia LXC 1.x.
Although Docker started out as an open source project to build specialized LXC, it later morphed into its own container runtime environment
więcej na ten linkOdpowiedzi:
Nie, LXC, Docker i LXD nie są takie same. W skrócie:
LXC
https://wiki.archlinux.org/index.php/Linux_Containers
https://linuxcontainers.org/
Doker
Build, Ship, and Run Any App, Anywhere
http://www.docker.comLXD
run LXD on Ubuntu and spin up instances of RHEL, CentOS, SUSE, Debian, Ubuntu and just about any other Linux too, instantly, ...
http://www.zdnet.com/article/ubuntu-lxd-not-a-docker-replacement-a-docker-enhancement/Docker vs LXD
Źródło: http://linux.softpedia.com/blog/infographic-lxd-machine-containers-from-ubuntu-linux-492602.shtml
Pierwotnie: https://insights.ubuntu.com/2015/09/23/infographic-lxd-machine-containers-from-ubuntu/
Drobna uwaga techniczna
lxc
http://blog.scottlowe.org/2015/05/06/quick-intro-lxd/źródło
Ten obraz pomoże ci zrozumieć główną różnicę między nimi:
Łączy je to, że wszystkie 3 technologie są powiązane z kontenerami.
Kontenery to lekki mechanizm wirtualizacji, który nie wymaga konfigurowania maszyny wirtualnej na emulacji sprzętu fizycznego. W Linuksie mają one wspólne funkcje jądra:
cgroups
,namespaces(ipc, network, user, pid, mount)
. Próbują także tworzyć bezpieczniejsze środowiska, tworząc nieuprzywilejowane kontenery i integrując je z funkcjami bezpieczeństwa, takimi jakselinux
. Te technologie eksportują interfejsy API w celu lepszej integracji z innymi programami.LXD i LXC
Te dwie integrują tę samą rodzinę, w której:
Zasadniczo tworzona jest niezależna przestrzeń użytkownika systemu operacyjnego z odizolowaną infrastrukturą. lxc opiera się bardziej bezpośrednio na funkcjach systemu operacyjnego dla sieci i pamięci niż Docker.
Tworzysz wiele maszyn wirtualnych, które mają przestrzeń użytkownika i izolację jądra, ale nie są to kompletne maszyny wirtualne, ponieważ nie działają na nich oddzielne jądra, ani nie są parawirtualizowane z tego samego powodu.
Canonical jest tutaj głównym sponsorem, a Oracle inwestuje również wiele godzin pracy w tę technologię.
Doker
Ma pewne różnice, ponieważ największy z nich to silnik, który zamyka aplikacje samodzielnym systemem plików zamiast podstawowego „obrazu przestrzeni użytkownika”. Chodzi o to, aby zawierać aplikację i obraz podstawowy, aby stworzyć wrażenie, że aplikacja jest pojedynczym procesem w silniku. Docker wykorzystywał technologię lxc jako podstawę do komunikacji z jądrem, ale dziś korzysta z własnej biblioteki libcontainer .
System plików jest abstrakcją Dockera, podczas gdy lxc bezpośrednio korzysta z funkcji systemu plików. Sieć jest również abstrakcją, a dzięki lxc możesz łatwiej konfigurować adresy IP i konfiguracje routingu. Niektóre witryny typu „App Store” są utrzymywane przez Microsoft, Amazon, Vmware, IBM i inne odtwarzacze.
Doker. INC. Jest tutaj głównym sponsorem. Vmware inwestuje również w tę technologię.
Powiązana technologia kontenerów:
Są to inne technologie kontenerów, które mają Linux: OpenVZ i Linux-VServer
Powiązane rzeczy:
źródło
lxc
jest programem klienckim LXD, który jest następcąlxc-*
nazwy Narzędzia LXC 1.x.