Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- 백엔드개발자
- 인증
- AbstractAggregateRoot
- CS
- redis
- java
- 네트워크
- 클린코드
- SnowFalke
- http
- 백엔드개발
- 인프라
- 보안
- 웹성능최적화
- 데이터베이스
- 성능최적화
- interceptor
- db
- devops
- Spring
- Spring Boot
- 백엔드
- 캐시
- 백엔드기초
- 세션
- 웹개발
- DEVIEW2023
- spring event
- JPA
- 프론트엔드
Archives
- Today
- Total
이것저것 개발기록
Docker를 왜 쓰나요? 가상머신(VM)과의 결정적 차이 본문
"내 컴퓨터에선 되는데 왜 서버에선 안 될까?"
환경 구축의 고통을 해결해준 혁명적인 도구, Docker와 기존 가상화 방식의 차이를 알아봅니다.
1. 컨테이너 기반 가상화
기존의 VM(Virtual Machine)은 하드웨어 위에 무거운 Guest OS를 통째로 올려야 했습니다. 반면 Docker 컨테이너는 호스트 OS의 커널을 공유하며 필요한 앱과 라이브러리만 격리해서 실행합니다.
| 항목 | 가상머신(VM) | 도커(Docker) |
|---|---|---|
| 부팅 속도 | 분 단위 (OS 부팅 필요) | 초 단위 (프로세스 실행) |
| 용량 | GB 단위 (무거움) | MB 단위 (가벼움) |
💡 실무 노트
실무에서 Docker를 쓰면 새 팀원이 합류했을 때 "DB 설치하고 JDK 뭐 깔아"라고 말할 필요가 없습니다. docker-compose.yml 파일 하나면 전체 개발 환경이 1분 만에 세팅되니까요.
팁: Dockerfile을 직접 작성해 보면서 이미지가 어떻게 계층(Layer) 구조로 쌓이는지 이해해 보세요. 이 과정은 나중에 배포 자동화(CI/CD)를 구축할 때 훌륭한 밑거름이 됩니다.
'IT 이야기' 카테고리의 다른 글
| 자바 가비지 컬렉션(GC)의 원리와 메모리 관리 (0) | 2025.12.27 |
|---|---|
| 데이터베이스 트랜잭션과 ACID 원칙 (0) | 2025.12.27 |
| 프로세스 vs 스레드, 핵심 차이 완벽 정리 (0) | 2025.12.27 |
| REST API 제대로 설계하기 (멱등성 완벽 이해) (0) | 2025.12.27 |
| "왜 내 DB는 느릴까?" 인덱스(Index)의 기본 원리 (0) | 2025.12.27 |