Notice
Recent Posts
Recent Comments
Link
forest_moon
Docker 와 Container 본문

컨테이너란 ?
- 가상화 기술중 하나이다
- 호스트 운영체제 위에 컨테이너 엔진을 통해 여러 개의 격리된 환경을 생성한다
- 각각의 컨테이너 안에서 애플리케이션을 실행한다
- 리눅스의 커널 기능을 사용한다.
기능 | 역할 |
chroot | 파일 시스템을 격리 |
namespace | 프로세스를 격리 / Isolate 기능 |
cgroup | 하드웨어 자원 격리 |
가상화 기술이란 하나의 물리적인 컴퓨터 자원(CPU , 메모리, 저장장칭 등)을 가상적으로 분할하여 여러 개의 가상 컴퓨터 환경을 만들어내는 기술이다. 이를 통해 물리적인 컴퓨터 자원을 더욱 효율적으로 사용할 수 있고, 서버나 애플리케이션 등을 운영하는데 있어 유연성과 안정성을 제공한다.
도커란 ?
- 컨테이너를 기반으로한 가상화 도구
- 리눅스 컨테이너 기술인 LXC(Linux Containers) 기반
- 애플리케이션을 컨테이너라는 단위로 격리해 실행하고 배포하는 기술
- 다양한 운영체제에서 사용할 수 있으며, 컨테이너화된 애플리케이션을 손쉽게 빌드,배포,관리할 수 있는 다양한 기능들을 제공한다
- 고언어(Go)를 사용
- 앱에서 인프라를 분석하여 신속하다
- 컨테이너를 구축,배포,복사하여 다른환경에서도 유연하게 사용할 수 있다.
- 도커(Docker)는 Immutable Infrastructure Paradigm이라는 개념을 기반으로 하기 때문에, 서비스 환경(서비스 인프라)부분을 이미지화(실행파일화)하여 배포한 뒤 가급적 변경하지 않고 사용한다.
도커의 특징
- 가볍고 빠른 실행 속도과 쉬운 배포
- 개발자들에게 편리한 클라이이언트 도구(Dockerfile, Docker cli, docker-compose)들을 많이제공
- 컨테이너 이미지 생성 및 공유 가능 (도커 허브를 통해)
- docker-compose라는 여러 Docker 컨테이너를 통합적으로 관리하는 cli 프로그램이 있어 컨테이너 구성에 용이하다
도커의 구조(Docker Architecture)

- 도커는 서버-클라이언트 모델을 사용한다
- 도커 클라이언트, 도커호스트, 네트워크 그리고 스토리지와 도커레지스트리(도커 허브) 로 구성되어있다
- 도커 클라이언트는 컨테이너를 빌드,실행 배포하는 등의 작업을 수행하는 도커데몬과 통신을 한다
- 도커의 클라이언트와 데몬은 동일한 시스템에서 실행이 되거나, 원격의 데몬 클라이언트를 연결할 수도 있다
도커 클라이언트(Docker Client)
- 도커클라이언트는 사용자가 도커와 상호작용을 할 수 있도록 해준다
- 도커 클라이언트는 호스트의 데몬과 연결할수 있고, 하나 이상의 데몬과도 소통할 수 있다
- CLI를 제공함으로써 애플리케이션의 빌드,실행,중지를 할 수 있는 커맨드를 데몬에 전달 할 수 있다
- 도커 클라이언트의 주요 목적은 직접 레지스트리에서 이미지를 받아 호스트에 실행할 수 있게 하는 것
도커 호스트(Docker Host)
- 애플리케이션을 실행하도록 환경을 제공하는 컴퓨터
- 도커데몬,이미지,네트워크,스토리지,컨테이너로 구성
도커 데몬(Docker daemon = dockerd)
- 도커 엔진의 핵심 구성 요소
- 도커 호스트에서 컨테이너를 관리하고 실행하는 역할
- 컨테이너를 생성, 시작, 중지, 삭제하는 등의 작업을 수행
- 컨테이너 이미지를 관리하고
- 외부에서 이미지를 다운로드하고 빌드하는 작업을 수행
도커 오브젝트(Docker Objects)
- 도커 이미지(Docker Image)
이미지는 컨테이너를 빌드하기 위한 read-only 바이너리 파일
- 도커 컨테이너(Container)
도커 이미지 기반으로 생성된 컨테이너는 실행가능한 도커 이미지의 인스턴스
사용자는 컨테이너를 Docker API를 통해 생성, 삭제, 수정, 이동할 수 있고, 하나 이상의 네트워크에 컨테이너를 연결할 수 있다.
도커 레지스트리(Docker Registries)
- 도커 이미지(Docker Image)를 관리하고 저장하는 곳
- Docker hun - 디폴트 레지스트리, 누구나 접근 가능한 개방형 저장소
'Docker' 카테고리의 다른 글
Docker로 컨테이너 실행시키기 (0) | 2023.04.13 |
---|