본문 바로가기
코딩/Docker

🐳 Docker Compose를 사용하는 이유

by Leedius 2025. 6. 25.

✅ 1. 여러 컨테이너를 한 번에 관리할 수 있습니다.

예를 들어, 웹 서버 (Node.js)와 데이터베이스(MongoDB)를 같이 사용한다면:

  • 일반 Docker로는 2개 컨테이너를 따로 docker run 해야 합니다.
  • Compose를 쓰면 docker-compose up 한 줄로 두 개 다 실행됨
📦 즉, 여러 서비스를 하나의 프로젝트처럼 다룰 수 있다.!

 


✅ 2. 설정을 파일로 정리할 수 있음

docker run 으로 옵션을 하나하나 붙이는 대신

docker-compose.yml 에 전부 정의해놓고 나중에 바로 재사용 가능!

services:
	web:
    	build: .
        ports:
        	- "3000:3000"
    db:
    	image: mongo
🧾 버전 관리도 가능하고, 팀원끼리 공유하기도 쉽습니다!

 


✅ 3. 서비스 간 의존성 관리가 쉬움

예 : 웹 서버가 MongoDB가 켜진 다음에 실행돼야 할 경우

depends_on:
	- mongo
🔄 실행 순서를 자동으로 관리해줘서 안정적임

 


✅ 4. 네트워크 설정이 자동으로 됨

Compose로 실행하면 컨테이너끼리는 자동으로 같은 네트워크 안에서 실행됨.

따라서 localhost 대신 서비스 이름으로 서로 접근 가능합니다!

mongoose.connect('mongodb:///mongo:27017/mydb')
🌐 복잡한 네트워크 설정 없이도 컨테이너 간 통신이 쉬움

 


✅ 5. 실무에서 표준처럼 사용됨

팀 개발, CI/CD, 서버 배포 등 대부분의 Docker 프로젝트는 Compose로 구성됩니다.

작업 자동화와 협업에 매우 유리합니다/

 


🎯 요약

이유 설명
여러 서비스 실행 여러 컨테이너를 한 줄로 실행
설정 정리 옵션을 YAML 파일로 관리
의존성 명시 실행 순서 자동 관리
네트워크 자동화 이름만으로 통신 가능
실무 표준 대부분의 팀에서 활용 중

 

댓글