IT지식/도커(Docker) 사용법

18.도커(Docker) Compose의 정의와 사용법

맨땅에헤딩개발자 2025. 2. 15. 12:41

Docker Compose란?

기본적으로 Docker는 여러 개의 컨테이너를 동시에 실행하는데

이러한 다수 개의 컨테이너들을 하나의 서비스로 정의하고 구성하여 관리할 수 있게 해주는 툴입니다.

 

 

Docker Compose가 제공하는 편리함

 

1. 여러 개의 컨테이너를 관리하는데 용이함

위에서 말씀드렸다시피 여러 개의 컨테이너로 이루어진 복잡한 애플리케이션을 한 번에 관리할 수 있게 해줍니다.

즉, 여러개의 컨테이너를 하나의 환경에서 실행하고 관리하는데 수월합니다.

 

2. 복잡한 명령어의 간소화

여태까지 실습해오면서 컨테이너를 실행할 때 마다 입력했었던 복잡한 명령어들을 'docker compose up' 한 문장으로

대신할 수 있습니다.

 

 

Docker Compose 사용법

 

기존 컨테이너 실행 명령어

docker run --name webserver -d -p 80:80 ngnix

 

Docker Compose로 컨테이너를 실행시켰을 때

 

우선 compose.yml을 생성 후 아래와 같이 코딩을해줍니다.

* .yml파일은 들여쓰기를 기준으로 판단을 하기 때문에 들여쓰기에 유의해 주시기 바랍니다.

services:
	my-web-server:
    	container_name: webserver
        image : ngnix
        ports:
         - 80:80

* services: my-web-server 

Docker Compose에서 하나의 컨테이너를 서비스(service)라고 합니다.

위 구문은 service에 name을 지정하는 옵션입니다.

 

* container_name : web-server

컨테이너의 name을 지정하는 옵션입니다.

CLI에서 --name과 동일한 역할을 수행합니다.

 

* image: nginx

컨테이너를 실행할 때 어떤 이미지를 사용할 것인지에 대한 정의를 내리는 구문입니다.

 

* ports

포트 매핑을 어떻게 할 지를 설정하는 구문입니다.

 

 

 

 

위의 그림과 같이 저는 demo파일 아래에 compose.yml 파일을 생성하였습니다.

terminal창에서 ls를 입력하여 compose.yml이 생성되었는지 확인해줍니다.

 

docker compose up -d 을 입력하시면

 

아래와 같이 입력했던 이미지로 컨테이너가 실행된 것을 볼 수 있습니다.

 

이후 compose를 중지할 때는

docker compose down이라는 명령어로 compose를 중지할 수 있습니다.

 

 

 

 

 

 

출처 - 인프런 비전공자도 이해할 수 있는 Docker 입문/실전 중..

https://www.inflearn.com/course/%EB%B9%84%EC%A0%84%EA%B3%B5%EC%9E%90-docker-%EC%9E%85%EB%AC%B8-%EC%8B%A4%EC%A0%84

 

비전공자도 이해할 수 있는 Docker 입문/실전 강의 | JSCODE 박재성 - 인프런

JSCODE 박재성 | , 🤬 에라이, 못 해먹겠네!비전공자로 개발을 시작해 여러 회사에서 CTO로 활동하다가, 현재는 교육자로 활동하고 있는 박재성이라고 합니다. 저도 비전공자로 개발을 시작해 서버

www.inflearn.com