2015-01-19 2 views
1

Linux Containers (LXC)의은 Windows 8에 도입 된 Windows 'Hyper-V와 유사한 Linux 시스템 용 네이티브 하이퍼 바이저를 제공한다는 것입니다. "네이티브 하이퍼 바이저"란 말은 Linux 시스템이 특별한 가상화 소프트웨어를 설치하지 않고도 게스트 VM을 호스트 할 수있는 능력. 부두 노동자의 이해VM과 LXC와의 도커 관계

은 어떻게 든 이 LXC 위에 구축, 응용 프로그램 개발자가 정의 할 수 있다는 것입니다 :

  1. 운영 체제를 포함하여 VM/노드의 정확한 응용 프로그램 스택의 OS 및 해당 OS에 설치/구성/배포 된 모든 도구 또는 응용 프로그램의 정확한 구성 및 조정.
  2. CPU 요구 사항, 메모리/디스크/네트워크 요구 사항,로드 균형 조정 및 복제 요구 사항 등을 포함하여이 VM/노드를 실행하기위한 정확한 리소스 요구 사항 Docker는 선언 된 요구 사항을 사용하여 컨테이너를 실행할 노드를 파악합니다 그것의 기준선으로.

LXC 나 Docker에 대한 나의 이해가 전혀 잘못 될 경우, 먼저 저를 시정하십시오!

나는 더 많거나 적은 올바른 나의 이해, 나에게있어 가정하면 :

  • 부두 노동자와, 말, VM웨어 나 젠 가상 머신 사이의 관계는 무엇인가? Docker가 가상화 계층의 "꼭대기에 앉아 있습니까?" 즉, 다른 가상화 플랫폼 (vmWare, Xen, kvm 등)에 대한 "Docker bindings"가 있으며 myapp에 대한 Docker 컨테이너를 가져 와서 Docker-ified 플랫폼에 배포 할 수 있습니까?
  • LXC와 Docker의 관계는 무엇입니까? Docker는 단순히 LXC를 확장하거나 완전히 비슷한 개념 (완전히 완전히 분리 된 개념)입니까? LXC의 확장 기능이 있다면, 어떤 방식으로? LXC와 부두 노동자 사이

답변

1

관계는 -> 고정 표시기 LXC을 사용하기 시작 없지만, 고정 표시기 0.9 이후, 고정 표시기 libcontainer를 사용하고, 더 이상 컨테이너를 시작 LXC 시작을 사용합니다. Docker는 LXC와 비교하여 REST API를 제공하고 이미지를 레지스트리에서 또는 레지스트리로 이동할 수 있으며 Dockerfiles를 사용하여 이미지를 이동할 수 있으며 Dockerfiles를 사용하여 빌드 할 수 있습니다 ...

+0

감사합니다. @ user2915097 (+1) - 내 첫 번째 질문 (Docker 's relationship) vmWare 또는 Xen과 같은 가상화 플랫폼에)? 또한 당신이 대답 한 질문에 대해, Docker "레지스트리"가 무엇인지 자세히 설명 할 수 있습니까? 나는 또한'libcontainer'와'lxc-start' 사이의 관계에 대해 혼란 스럽습니다 -이 경쟁 라이브러리입니까? 다시 한 번 감사드립니다! – smeeb

+1

docker는 VMWare 또는 Xen과 관계가 없으므로 다른 개념으로 프로세스 실행, 파일 시스템 격리 (각 컨테이너에는 자체 루트 파일 시스템 있음), 프로세스 격리, 네트워크 격리 (별도의 가상 인터페이스 및 IP 주소), 리소스 격리, 특정 로깅 (STDIN, STDOUT 및 STDERR을 사용할 수 있음) – user2915097

+1

컨테이너의 기본값은 10GB이며 변경 가능합니다 (http://jpetazzazzo.github.io/2014/ 참조). 01/29/docker-device-mapper-resize /와'docker run'을 사용하면 컨테이너에 할당 된 CPU 및 메모리의 공유를 지정할 수 있습니다. https://docs.docker.com/reference/run/#runtime -constraints-on-cpu-and-memory 및이 훌륭한 게시물 https://goldmann.pl/blog/2014/09/11/resource-management-in-docker/ – user2915097

관련 문제