Docker 용 Linux 컨테이너 대신 Windows 컨테이너를 사용하는 장단점?


36

Windows 10에 Docker for Windows (CE)를 설치하고 있으며 첫 번째 화면이 나타납니다.

[] Linux 컨테이너 대신 Windows 컨테이너를 사용하십시오 (설치 후 변경 가능)

이것은 중요한 결정으로 보이지만 Docker documentation , FAQWindows 컨테이너 자습서 내가 하나를 선택할 수 있는지 에 대한 정보를 제공하지 않습니다 .

이 선택의 결과에 대한 객관적인 개요를 갖는 것이 도움이 될 것입니다.

  • 한 옵션이 다른 옵션보다 빠를까요?
  • 결정이 시스템 리소스 (RAM, CPU) 사용에 영향을 줍니까?
  • 두 유형 모두에서 동일한 이미지를 실행할 수 있습니까?
  • 하나는 다른 것보다 안전합니까?

결론에 도달하는 데 도움이되는 다른 차이점은 매우 환영 할 것입니다.


이에 대한 답은 의견에 근거한 것이 아닙니다. 그리고 그것은 받아 들여집니다. 따라서 이것을 닫을 필요가 없습니다.
Nils

답변:


19

Windows 컨테이너에는 Windows 호스트를 사용해야하지만 Linux 컨테이너에는 Linux 호스트 또는 Windows 호스트를 사용할 수 있습니다. 2018 년 4 월부터 두 가지를 동시에 실행할 수도 있습니다 .

한 옵션이 다른 옵션보다 빠를까요?

아니요. 더 빠릅니다.

결정이 시스템 리소스 (RAM, CPU) 사용에 영향을 줍니까?

Windows는 Linux보다 많은 리소스를 사용합니다. Windows Nano는 크기가 작을수록 작습니다

두 유형 모두에서 동일한 이미지를 실행할 수 있습니까?

아니요. 모노 컨테이너에서 .NET 앱을 실행할 수는 있지만 Linux 호스트에서 Windows 컨테이너를 시작할 수 없으며 그 반대도 마찬가지입니다. 가상화와 동일하지 않습니다.

하나는 다른 것보다 안전합니까?

다시-무엇에 더 안전합니까? 아니요. 둘 다 기본 Docker를 실행하므로 hyper-v vs VMware 및 Linux-Windows와 같은 것은 아니므로 .net, python, java, ruby ​​등을 실행할 대상에 따라 다릅니다.


2
두 번째입니다. 읽기는이 답변을 보완합니다 containerjournal.com/2016/10/28/…
A.Newgate

4
따라서 Linux 컨테이너를 사용하기로 선택한 경우 Docker는 컨테이너를 실행하기 위해 Hyper-V Linux VM을 시작하고 그렇지 않으면 Windows 컨테이너를 기본적으로 실행합니까? 그리고 두 유형의 컨테이너를 동시에 실행할 수 없습니까?
던컨 존스

1
Windows 10 용 도커를 사용하면이 작업을 수행 할 수 있습니다. 그러나 프로덕션 환경에서는 Linux 및 Windows 호스트가있는 도커 떼가 있습니다.
Sum1sAdmin

Docker는 lxc (Linux)를 기반으로합니다. Docker-host와 동일한 커널을 사용합니다. lxc에서 윈도우를 시작하면 win을 가상화하거나 에뮬레이션해야합니다. win이 Linux를 지원하기 때문에 win-docker에도 동일하게 적용되는지 확실하지 않습니다.
Nils

1
@DuncanJones, MSDN에 블로그 게시물 이 있다고 요청한 지 3 일 만에 Windows와 Linux 컨테이너를 병렬로 실행할 수 있다고 설명했습니다.
조나스 하이델베르크
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.