도커의 동작 원리
1. 도커의 구조
2. 도커와 리눅스
1. 도커의 구조
- 제일 하단에 물리 서버가 존재한다.
- 그 위에 물리 서버에서 동작하는 리눅스 운영체제가 있다.
- 일반적인 서버에서는 운영체제 위에 프로그램이나 데이터가 올라간다.
- 도커의 경우 운영체제 위헤 도커 엔진이 동작하고 그 위에 컨테이너가 동작한다.
- 컨테이너 내에는 프로그램이나 데이터가 존재한다.
컨테이너의 구조
- 운영체제 '비슷한 것'이 들어있다.
- 컨테이너는 비어있을 수 있다. 그러나 이 형태는 잘 사용되지 않는다.
- 대부분의 컨테이너 내에는 리눅스 운영체제 비슷한 무언가가 존재한다.
- 실제 운영체제가 존재하는 것은 아니다.
컨테이너와 리눅스의 통신
- 원래 운영체제는 커널과 주변 부분으로 구성된다.
- 주변 부분이 프로그램과 통신을 하고, 그 내용을 커널에 전달 해 하드웨어를 다룬다.
- 도커에서는 컨테이너가 분리되어 리눅스 운영체제의 주변부분이 컨테이너 속 프로그램의 명령을 전달받을 수 없다.
- 컨테이너에는 운영체제의 주변 부분들이 들어있어 프로그램과 통신하고, 이를 커널에 전달한다.
- 이로 인해 '가벼움' 이라는 도커의 큰 장점을 얻는다.
2. 도커와 리눅스
- 도커는 기본적으로 리눅스 용으로 리눅스 운영체제에서만 동작한다.
- 따라서 컨테이너 내에 존재하는 주변 부분, 컨테이너에서 실행할 소프트웨어 모두 리눅스 용이어야 한다.
- 윈도우나 mac에서는 바로 도커를 사용할 수 없다.
- 아래와 같은 방법으로 윈도우에서도 도커를 사용할 수 있다.
- VMware와 같은 가상환경 위에 리눅스 운영체제를 설치하고, 그 위에서 도커를 사용한다.
- 혹은 도커 데스크톱과 같은 도커를 실행하는데 필요한 운영체제를 포함하는 패키지를 설치한다.
'Backend > Docker' 카테고리의 다른 글
| Te Docker (1) - 도커 데스크탑 설치하기 (윈도우) (0) | 2024.01.21 |
|---|---|
| Te Docker (1) - 도커의 장단점 (0) | 2024.01.20 |
| Te Docker (1) - 도커 컨테이너의 생애주기와 데이터 저장 (0) | 2024.01.20 |
| Te Docker (1) - 도커 허브와 이미지, 컨테이너 (0) | 2024.01.20 |
| Te Docker (1) - 도커란? (0) | 2024.01.19 |