Docker가 다른 Linux 배포판을 실행할 수있는 이유는 무엇입니까?
docker를 사용하여 다른 이미지를 가져올 수 있습니다. 그리고이 이미지는 다른 리눅스 배포판입니다. 그러나 어떤 Linux 배포판도 커가 실행 되든 상관없이 도커는 가상 머신에서와 마찬가지로 이러한 다른 Linux 배포판을 실행할 수 있습니다.
도 커가 aufs 를 사용 하여 다른 읽기-쓰기 액세스 수준을 제어 한다는 것을 알고 있습니다. 따라서 호스트 시스템에서 일부 파일을 재사용 할 수 있습니다. 하지만 apt-get
호스트가 실행될 때도 커가 컨테이너에서 어떻게 실행될 수 arch linux
있습니까? 이미지에 apt-get
바이너리가 포함되어 있습니까? 그러나 다른 리눅스 배포판은 libs와 소프트웨어 버전이 다릅니다. 구성 파일도 다릅니다. 도커는 아치 리눅스에서 우분투를 어떻게 "실행"할 수 있습니까?
커널이 동일하기 때문입니다.
모든 리눅스 배포판의 공통점과 그들이 리눅스라고 불리는 이유는 모두 리눅스 커널을 사용하기 때문입니다.
컨테이너는 호스트와 동일한 커널을 공유하므로 Ubuntu 호스트에서 Arch 이미지를 실행할 수 있습니다.
다음은 Linux에 대한 개요입니다.
커널은 하드웨어와의 통신을 처리하는 운영 체제의 일부입니다. 운영 체제의 가장 낮은 수준입니다. 다음은 커널의 주요 기능 목록입니다.
- 메모리 관리
- 네트워크 관리
- 장치 드라이버
- 파일 관리
- 공정 관리
따라서 컨테이너를 사용할 때 호스트의 커널에만 액세스 할 수 있습니다. OS가 good을 사용하는 한 하드웨어와 통신하는 유일한 부분이기 때문에 syscall
컨테이너 내에서 모든 Linux 배포를 실행할 수 있습니다. (이것이 컨테이너 내에서 Windows를 사용할 수없는 이유입니다 : 동일한 것을 사용하지 않습니다 syscall
).
예, 이미지에 apt-get을 포함해야 apt-get을 실행할 수 있습니다. 각 이미지는 내부에 다른 소프트웨어를 설치할 수 있습니다. 예를 들어 아치 도커 이미지 또는 우분투 이미지를 설치할 수 있습니다. 다음 명령을 사용하여 공개 이미지를 검색 할 수 있습니다.
docker search <your search term>
우분투 이미지를 검색하려면
docker search ubuntu
도커 튜토리얼을 따라 가면서 왼쪽에있는 모든 지침과 링크를주의 깊게 읽어 보는 것이 좋습니다 .
'Programing' 카테고리의 다른 글
$ resource에 전달 된 @id는 무엇입니까? (0) | 2021.01.08 |
---|---|
Python에서 공유 축이있는 GridSpec (0) | 2021.01.08 |
Kubernetes에서 복제 컨트롤러 VS 배포 (0) | 2021.01.08 |
“autofillHints 속성 누락” (0) | 2021.01.07 |
boost :: asio :: ip :: tcp :: socket의 IP 주소를 얻는 방법은 무엇입니까? (0) | 2021.01.07 |