새소식

OpenSource

Docker 개요

  • -

1. 도커란?
- [
명사] 부두[항만] 노동자
-
컨테이너를 기반으로 하여 특정한 서비스를 패키징하고 배포하는데 유용한 오픈소스 프로그램

2. 컨테이너
-
사전적 의미로 어떤 물체를 격리하는 공간
-
선박의 컨테이너 처럼 프로세스가 사용하는 자원을 격리 하는 것
-
애플리케이션을 관련 라이브러리 및 종속 항목과 함께 패키지로 묶어 소프트웨어 서비스 구동을 위한 격리 환경

 

3. 전통적인, 가상화, 컨테이너(도커) 환경 비교

 

4. 어떻게 프로세스에 할당하는 자원을 분리할까?
- Namespace
이용
 : Mount namespace : 파일 시스템 분리 / 마운트 포인트 별개로 부여
 : UTS namespace :
호스트 네임 분리 / 컨테이너에게 자체적으로 소스트 네임과 도메인 이름을 주는거
 : IPC namespace :
프로세스간 통신 분리 / IPC(프로세스간 통신) V IPC, POSIX 메시키 큐 시스템을 호스트로부터 분리
 : User namespace :
유저(UID/GID) 분리 / 호스트의 사용자와 그룹 id를 서로 분리
 : PID namespace :
프로세스 테이블 분리 / Namespace 내부에서 실행되는 process들은 기존 pid 할당순서와 별개로 pid 부여
 : Network namespace :
네트워크 설정 분리 / virtual Ethernet devices를 페어로 생성 가상의 케이블로 연결하는 효과.

- cgroups (Control Groups) 이용
 :
메모리, CPU, I/O, 네트워크, device노드

 

 출처 : likefree.tistory.com/18?category=1002427

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.