티스토리 뷰
도커란?
도커(Docker)는 애플리케이션을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트
LXC 구조와 도커 구조
LXC(LinuX Container) 구조 : 여러 개의 컨테이너가 다수의 애플리케이션 서버처럼 동작할 수 있음
- 가상공간 제공 (리눅스 커널)
- cgroups(Control Groups) : CPU, RAM 등 자원을 원하는 만큼 격리된 프로세스에 할당
- namespaces : 프로세스를 독립시켜주는 가상화 기술
도커 구조 : LXC를 좀 더 효율적으로 생성/관리/배포할 수 있도록 컨테이너 관련 작업을 효율적으로 하기 위해 만들어짐
- LXC는 하나의 컨테이너에 여러 응용 프로그램을 사용하는 반면, 도커는 컨테이너 당 하나의 응용 프로그램 사용 권장
- Snapshop(이미지 백업 기능)이 LXC에는 없지만 도커에는 캡처 기능 존재
- 컨테이너의 보안 및 격리 관점에서 더 많은 유연성을 가짐
- 업데이트 시 서로 간의 간섭 받지 않음
- 마이크로서비스 아키텍처를 구성하는 것에 효율적
도커 이미지와 컨테이너
가상 머신과 컨테이너는 기술적으로 분명한 차이가 존재함
- 애플리케이션 서버로 사용한다는 점 유사
- 다수의 애플리케이션을 한 호스트에서 운용 가능
Git과 Docker 기반의 배포(응용)
서버 여러 대에 어플리케이션을 배포하는 방법으로 서버 한 대에 Docker 이미지를 생성할 때와 달리 Docker 이미지를 여러 서버에 전달해야 하기 때문에 Docker 레지스트리 서버를 구축하여 배포
1) Docker 이미지 생성 (Git 저장소에 개발한 프로그램을 Docker 이미지로 저장 후 git push)
2) Docker 레지스트리에 Push (-> docker pull로 Docker 레지스트리에 받아서 사용 가능)
쿠버네티스란?
쿠버네티스(kubernetes)는 디플로이 자동화, 스케일링, 컨테이너화된 애플리케이션의 관리를 위한 오픈 소스 시스템으로서 구글에 의해 설계되었고 현재 리눅스 재단에 의해 관리
- 디플로이 : 컨테이너화된 애플리케이션의 관리 자동화
- 목적 : App 컨테이너 배치 / 스케일링 / 운영 자동화 플랫폼 제공
- 주요 기능
- 여러 서버에서 컨테이너 관리
- 컨테이너 대규모 업데이트
- 컨테이너 가용성을 위한 부하분산
- 컨테이너 모니터링
- 컨테이너 간 가상 네트워크 관리
- 컨테이너의 쉽고 빠른 배포
- 장애 발생 시 자동 복구
- 온프레미스 환경에 도입 시 클러스터 구축 및 운용은 기술적 난이도가 높음
- 퍼블릭 클라우드가 제공하는 서비스를 이용하는 경우 유리
- ex) Amazon EKS(Elastic Kubernetes Service), GKE(Google Kubernetes Engine), AKS(Azure Kubernetes Service)
Kubernetes Master : 노드 관리
Kubernetes Node 내 Pod : 도커 컨테이너 동작
- Kube-Proxy (네트워크 담당) 을 통해 Pod에 접근
'IT > Docker' 카테고리의 다른 글
Docker를 활용하여 환경에 맞는 requirements.txt 만들기 (0) | 2025.02.21 |
---|---|
[도커] docker-compose로 환경 구성하기 / React + Django + Nginx + MariaDB (0) | 2022.02.11 |
- Total
- Today
- Yesterday
- Next.js
- 삼성
- SCSA
- SW역량테스트
- GeoPolygon
- aws
- wkt
- submodule
- Polygon
- Python
- konlpy
- 삼전
- docker
- architecting
- 렌더트리
- ReactDOM
- cssom
- DOM
- svelte
- 역량테스트
- 블로그플랫폼
- 카이제곱검정
- choropleth
- 삼성전자
- tsconfig
- react
- Plotly
- 도커컨테이너
- graphql
- polyfill
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |