-
위에 그림을 보면 도커에서 사용되는 용어들을 볼 수 있다
1. 도커 이미지 and 컨테이너
- 도커 이미지는
- 한개의 서버 즉 컨테이너에 여러개의 기능을 넣어 줄 수 있다
- 예를 들어 컨테이너 1에는 WAS/DB( SQL ) , 컨테이너 2에는 WAS/DB ( 오라클 )
- 이때 각각 정의 되어 있는 WAS/DB 이것들의 정의를 이미지라고 칭한다
- 실제로 구동 되는 것은 이미지로 만든 컨테이너
2. 도커 엔진
- 도커의 모든 동작을 담당
3. 도커 클라이언트
- 도커를 사용할 때 host PC의 OS 가 윈도우 일 때 사용자가 Linux를 사용 또는 오라클을 사용하고 싶을 때
- 도커에 필요한 OS들을 ( 컨테이너 ) 올리면서 사용 or my SQL, 오라클등 을 올리면서 사용
- 이때 HOST PC는 클라이언트의 입장이다
- 왜 ?
- 도커에서 올려 둔 각 컨테이너 ( 각 OS ) 들은 서버가 되기 때문
- 서버와 클라이언트는 독립된 공간으로 볼 수 있으며 그에 따라 각 디렉토리 역시 독립적이다
4. 도커 HOST OS
- 도커 클라이언트의 OS
도커의 작동 구조
위의 그림과 같은 구조로 도커 컨테이너가 구성되게 된다
도커의 작동 원리
1. Namespace
- 키 : 벨류가 쌍으로 묶여 있는 딕셔너리를 생각하면 됨
- EX )
- HTML의 태그들은 모두 HTML이라는 네임 스페이스로 묶여 있음
- 그렇기 때문에 당연히 다른 언어에서 HTML 태그를 사용하려고 한다면 네임스페이스가 다르기 때문에 사용 불가
- EX )
- 윈도우와 리눅스의 명령어는 다르다
- ( 네임스페이스 ) 윈도우 : ( 명령어 ) dir, cls 리눅스 : ls, clear 서로하는 기능은 같다
- 하지만 리눅스 네임스페이스와, 윈도우의 네임스페이스에 맞추어 실행을 해주어야 함
위와 같은 Namespace의 개념이
PID Namespace -> 프로세스들의 네임스페이스
즉 각 컨테이너에서 실행되는 프로세스들은 독립 되어 있음
Network Namespace
네트워크 역시 독립되어 있음
모든 자료의 출처는 시니어코딩에 있습니다.
https://www.youtube.com/channel/UCei9IGoBLCRShZaBb_RN_IA
'Docker' 카테고리의 다른 글
Docker의 개념 (0) 2020.01.09