Relacionamento do Docker com VMs e LXC

Minhascompreensão do Linux Containers (LXC) é que ele fornece um hypervisor nativo para sistemas Linux, semelhante ao Hyper-V do Windows introduzido no Windows 8. Por "hypervisor nativo", quero dizer, a capacidade do sistema Linux de hospedar VMs convidadas dentro de sem precisar instalar nenhum tipo de software de virtualização especializado.

Minhascompreensão do Docker é quede alguma forma baseia-se no LXC e permite que os desenvolvedores de aplicativos definam:

A pilha exata de aplicativos de uma VM / nó, incluindo o sistema operacional, a configuração e o ajuste exatos do sistema operacional e quaisquer ferramentas ou aplicativos instalados / configurados / implantados nesse sistema operacional; eOs requisitos exatos de recursos para executar esta VM / nó, incluindo requisitos de CPU, memória / disco / rede, balanceamento de carga e requisitos de replicação, etc. O Docker descobre em quais nós executar o contêiner, usando esses requisitos declarados como linha de base.

Então, primeiro, se meu entendimento de LXC ou Docker é enganoso,por favor, comece me corrigindo!

Supondo que estou mais ou menos correto no meu entendimento, pergunto:

Qual é o relacionamento entre o Docker e, digamos, as VMs vmWare ou Xen? O Docker "fica em cima" da camada de virtualização? Em outras palavras, existem "ligações do Docker" para diferentes plataformas de virtualização (vmWare, Xen, kvm etc.) e eu poderia usar um contêiner do Docker paramyapp e implantá-lo em qualquer plataforma Docker-ified?Qual é a relação entre o LXC e o Docker? O Docker simplesmente estende o LXC ou é um conceito semelhante (mas completamente separado)? Se é uma extensão do LXC, de que maneira?

questionAnswers(1)

yourAnswerToTheQuestion