리눅스에서 Docker Compose 써본 진짜 이야기 (설치부터 써보는 순간까지)
안녕하세요! 이 글은 좀 달라요. 기술 문서라기보다는요, 제가 리눅스에서 Docker Compose 깔고 써보면서 겪은 경험담이에요. 삽질도 좀 하고, 감탄도 하고... 그 모든 순간을 솔직하게 풀어볼게요. 마치 친구한테 말하듯이요.

Docker Compose? 그게 뭐였더라?
처음 Docker 쓸 때, container 여러 개를 하나하나 띄우는 게 너무 귀찮았어요. 진짜 손이 열 개라도 모자란 느낌이랄까... 그런데 Docker Compose를 알고 나서? 헉, YAML 파일 하나로 모든 게 자동으로 실행된다니! 진짜 처음 써봤을 때는 "와... 이거 좀 치트키 아닌가?" 싶었어요.
리눅스에서 직접 설치해봤어요
mac이나 Windows는 Docker만 설치하면 Compose도 같이 딸려오잖아요? 근데 리눅스는 아니더라고요. 그래서 검색창에 “docker-compose 리눅스 설치”만 열 번은 쳐본 것 같아요. 결국엔 성공했지만요. 아래처럼 하시면 저처럼 헤매지는 않으실 거예요.
1단계: 다운로드
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
그냥 공식 깃허브에서 가져오는 거예요. 겁먹지 마세요.
2단계: 실행 권한 주기
sudo chmod +x /usr/local/bin/docker-compose
안 하면 "permission denied" 뜨니까 꼭 해주세요. 제가 그랬거든요.
3단계: 링크 걸기
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
이걸로 어디서든 docker-compose 명령어를 쓸 수 있어요. 안 걸면 불편하더라고요.
4단계: 확인해보기
docker-compose --version
버전 숫자 뜨면 성공! 전 처음에 오타 잘못 쳐서 한참 헤맸어요. 오타 조심요 😅

Compose로 서비스 실행해보기
이제 재밌는 부분! 먼저 YAML 파일이 있는 프로젝트 폴더로 가요.
cd 내/프로젝트/경로
그다음엔 그냥 이거 한 줄:
docker-compose up
처음엔 이게 다인가 싶었는데... 진짜 다예요. 이미지 알아서 당겨오고, 네트워크 만들고, container 돌리고. 와... 너무 똑똑해요.
혹시 뒤처리도 필요하시다면?
전 뭔가 테스트하다 보면 container며 이미지며 쌓이는 게 보기 싫더라고요. 그래서 가끔 아래 명령어로 싹 정리해요:
docker image prune -a
docker container prune
그리고 이렇게 확인도 하죠:
docker ps
깔끔하게 정리된 터미널을 보면 괜히 마음도 정리되는 기분이에요.
로그는 꼭 보고 싶을 때만!
docker-compose up 하면 쭉 로그가 나오는데, 전 그게 디버깅할 때 아주 좋아요. 뭐가 실행됐는지 한눈에 보이거든요. 멈추고 싶으면 Ctrl+C. 간단하죠?
그리고 지금까지 돌린 container들이 뭐가 있었는지 보고 싶다면:
docker ps -a
터미널 차지하기 싫다면?
로그 안 보고 조용히 돌리고 싶을 땐?
docker-compose up -d
이거 진짜 꿀이에요. 터미널은 자유롭게 쓰고, container는 뒤에서 잘 돌아가고.
다 멈추고 정리하고 싶을 땐?
서비스 다 정리하고 싶을 땐요:
docker-compose down
container랑 네트워크는 날리고, volume은 그대로라서 중요한 데이터는 안 날아가요.
하지만 정말 다! 정리하고 싶다면:
docker-compose down -v
이건 volume까지 날려요. 실수로 한 번 눌렀다가... 제 DB 다 날라간 적 있어요. 진짜 조심하세요 😭

내가 자주 쓰는 명령어 모음집
명령어 언제 쓰냐면요...
| docker-compose up | 프로젝트 처음 시작할 때 |
| docker-compose up -d | 백그라운드로 조용히 돌릴 때 |
| docker-compose down | 작업 다 끝났을 때 정리용 |
| docker-compose down -v | 완전히 싹 비울 때 (신중하게!) |
| docker image prune -a | 안 쓰는 이미지 다 날리고 싶을 때 |
| docker container prune | 중지된 것들 정리할 때 |
마무리하면서...
솔직히 Docker Compose는 처음엔 좀 어렵게 느껴졌어요. 근데 한 번 익숙해지니까, 이건 진짜 개발자 필수템이에요. container 여러 개 한 번에 돌릴 수 있는 이 편리함... 써본 사람만 알아요.
리눅스에서도 전혀 어렵지 않으니, 저처럼 개발 환경 깔끔하게 관리하고 싶은 분들께 강추드려요. 다음에는 제 백엔드 서버를 Compose로 옮긴 얘기도 들려드릴게요. 기대해 주세요!
'SW > Kubernetes, Docker' 카테고리의 다른 글
| Docker 유틸리티 컨테이너란? Node 없이 npm init 하는 법 (0) | 2025.09.21 |
|---|---|
| Docker Compose로 풀스택 개발환경 한 번에 세팅하는 방법 (React + Node.js + MongoDB) (0) | 2025.09.20 |
| Docker Compose로 MongoDB 환경 구성하는 방법 (완전 초보도 가능한 실전 예제) (0) | 2025.09.18 |
| Docker 로드맵 2025: 초보자부터 실무까지 한 번에 끝내는 가이드 (1) | 2025.09.17 |
| Docker Compose 쉽게 시작하기: 백엔드, 프론트엔드, DB 한 번에 띄우는 방법 (0) | 2025.09.17 |