728x90
반응형
SMALL
✅ Docker란 무엇일까?
도커는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 다양한 프로그램들과 실행환경을 컨테이너로 규격화시켜 프로그램의 배포 및 관리를 단순화할 수 있다. 프로그램의 코드뿐만 아니라 실행에 필요한 모든 dependency들도 컨테이너에 담기 때문에 다른 환경에서도 빠르게 애플리케이션을 실행할 수 있다. 또한 어떠한 프로그램이라도 컨테이너로 규격화할 수 있기 때문에 편리하다.
🔎 요약
- 컨테이너 기반 가상화 도구
- 리눅스 컨테이너 기술인 LXC(Linux Containers) 기반
- 애플리케이션을 컨테이너라는 단위로 격리하여 실행하고 배포하는 기술
- 다양한 운영체제에서 사용할 수 있으며, 컨테이너화된 애플리케이션을 손쉽게 빌드, 배포, 관리할 수 있는 다양한 기능을 제공
✅ 컨테이너 기반 특징
- 리눅스 커널의 기능을 사용하여 만들어짐
- chroot: 파일 시스템을 격리
- namespace: 프로세스 격리
- cgroup: 하드웨어 자원 격리
- 프로세스 단위의 격리 환경
🔎 프로세스 단위로 격리를 하면 그냥 프로그램 실행하는 것과 무엇이 다를까?
필요한 라이브러리들과 실행 환경들이 어디서든지 로컬 이외의 다른 환경에서도 그대로 실행할 수 있다.
✅ Docker Architecture
🔎 도커 데몬(Docker Daemon = dockerd)
- 도커 엔진의 핵심 구성 요소
- 도커 호스트에서 컨테이너를 관리하고 실행하는 역할
- 컨테이너를 생성, 시작, 중지, 삭제하는 등의 작업을 수행
- 컨테이너 이미지를 관리하고 외부에서 이미지를 다운로드하고 빌드하는 작업을 수행
🔎 도커 클라이언트(Docker Client)
- Docker와 상호 작용
🔎 도커 오브젝트
- 도커 이미지(도커 컨테이너를 만들기 위한 읽기 전용 템플릿
- 도커 컨테이너(한 도커 이미지의 실행 가능한 인스턴스, 애플리케이션을 실행하기 위한 모든 파일과 설정 정보를 포함하는 패키지)
🔎 도커 레지스트리
- 도커 이미지를 관리하고 저장하는 곳(Docker hub: 디폴트 레지스트리, 누구나 접근 가능한 공개형 저장소)
📚 도커 공식 홈페이지 훓어보려면 아래로
728x90
반응형
'Docker' 카테고리의 다른 글
[Docker] 로컬 환경에서 도커를 활용해보자 (0) | 2023.04.06 |
---|