SW/Kubernetes, Docker

리눅스에서 Docker Compose 설치하고 사용하는 법 (실전 후기 포함)

얇은생각 2025. 9. 19. 07:30
반응형

리눅스에서 Docker Compose 써본 진짜 이야기 (설치부터 써보는 순간까지)

안녕하세요! 이 글은 좀 달라요. 기술 문서라기보다는요, 제가 리눅스에서 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로 서비스 실행해보기

 

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로 옮긴 얘기도 들려드릴게요. 기대해 주세요!

반응형