728x90

| 항목 | Docker | Docker Compose | Docker Swarm | Kubernetes |
| 주요 기능 | 컨테이너 실행 | 여러 컨테이너 정의/실행 | 분산 클러스터 운영 | 대규모 오케스트레이션 |
| 사용 대상 | 단일 컨테이너 | 소규모 앱 (다중 컨테이너) | 중소 규모 클러스터 | 대기업용, 복잡한 앱 |
| 설정 방식 | CLI 명령어 | docker-compose.yml | CLI + 설정 | YAML 매니페스트 |
| 학습 난이도 | 쉬움 | 쉬움 | 중간 | 어려움 |
| 확장성 | 낮음 | 낮음 | 중간 | 매우 높음 |
| 복원/자동화 | 없음 | 없음 | 간단한 복제 | 자동 복구, 자동 확장 등 매우 강력 |
| 배포 대상 | 단일 서버 | 단일 서버 | 여러 서버 | 여러 서버 |
| 대표 사용자 | 개발자 | 팀 개발자 | 중소기업 | 대규모 서비스, 클라우드 기업 |
🍱 1. Docker – 컨테이너의 시작
Docker는 ‘하나의 애플리케이션’을 ‘컨테이너’라는 독립된 환경에 담아 실행하는 기술입니다.
- 마치 도시락통에 반찬(프로그램)을 담듯, 앱과 필요한 환경을 하나로 포장해 실행할 수 있어요.
- 개발자가 만든 환경 그대로 운영 서버에서도 실행되니, “내 컴에선 되는데요?” 문제가 사라져요.
➡️ 주로 단일 서버, 단일 애플리케이션 실행에 적합
🧰 2. Docker Compose – 여러 컨테이너를 한번에
Docker Compose는 여러 개의 Docker 컨테이너를 한번에 정의하고 실행할 수 있게 해줘요.
- 예: 웹서버, DB, 캐시 서버 등 여러 컨테이너를 하나의 docker-compose.yml 파일에 정의하고 docker-compose up 한 번이면 끝!
- 개발 환경이나 소규모 서비스 테스트에 유용해요.
➡️ 여러 개의 컨테이너를 한 번에 다룰 수 있게 해줌 (하지만 단일 서버 한정)
⚓ 3. Docker Swarm – 도커의 오케스트레이션 기능
Docker Swarm은 여러 대의 서버에 걸쳐 컨테이너를 **클러스터(무리)**로 운영할 수 있게 해줍니다.
- Docker 기반이므로 기존 Docker 명령어 그대로 사용 가능.
- 자동 부하 분산, 컨테이너 복제, 고가용성 지원 등 기본적인 오케스트레이션 기능 제공.
➡️ 단순한 분산 환경 구축에 적합 (하지만 Kubernetes보단 단순하고 제한적)
☸️ 4. Kubernetes – 컨테이너 왕중왕
**Kubernetes(K8s)**는 Google이 만든 초대형 컨테이너 오케스트레이션 시스템이에요.
- 수백~수천 개의 컨테이너도 효율적으로 관리!
- 자동 복구, 오토스케일링, 롤링 업데이트 등 뭐든 다 됨.
- 다만 배우기 어렵고 설정도 복잡… 하지만 기업은 대부분 이걸 씁니다.
➡️ 대규모 환경에 최적화된 컨테이너 관리 솔루션
728x90
'Docker' 카테고리의 다른 글
| 특정 버전으로 Docker 설치하기 (0) | 2024.05.07 |
|---|---|
| 컨테이너/이미지 모두 삭제 명령어 (0) | 2024.04.09 |
| docker-compose (0) | 2024.04.09 |
| 도커 / 컨테이너 / 이미지 (0) | 2024.04.03 |
| Docker compose & Kubernetes (0) | 2024.03.07 |