Docker Compose란??
여러 개의 Docker 컨테이너들을 하나의 서비스로 정의하고 구성해 하나의 묶음으로 관리할 수 있게 도와주는 툴이다
Docker Compose를 사용하는 이유??
1. 여러 개의 컨테이너를 관리하는 데 용이
여러 개의 컨테이너로 이루어진 복잡한 애플리케이션을 한 번에 관리할 수 있게 해준다
여러 컨테이너를 하나의 환경에서 실행하고 관리하는 데 도움이 된다
2. 복잡한 명령어로 실행시키던 걸 간소화 시킬 수 있음
이전에 MySQL 이미지를 컨테이너로 실행시킬 때 아래와 같은 명령어를 실행시켰다
$ docker run -e MYSQL_ROOT_PASSWORD=password123 -p 3306:3306 -v /Users/jaeseong/Documents/Develop/docker-mysql/mysql_data:/var/lib/mysql -d mysql
너무 길고 복잡하다...
Docker Compose를 사용하면 위와 같이 컨테이너를 실행시킬 때마다 복잡한 명령어를 입력하지 않아도 된다
단순히 docker compose up 명령어만 실행시키면 된다
그럼 이제 실습을 해보겠다
🎯 [실습] Docker Compose 전체 흐름 느껴보기 (Nginx 설치 및 실행)
Docker CLI로 컨테이너를 실행시킬 때
$ docker run --name webserver -d -p 80:80 nginx
Docker Compose로 컨테이너를 실행시킬 때
1. compose.yml 파일 작성하기
services:
my-web-server:
container_name: webserver
image: nginx
ports:
- 80:80
- services: my-web-server : Docker Compose에서 하나의 컨테이너를 서비스(service)라고 부른다. 이 옵션은 서비스에 이름을 붙이는 기능이다
- container_name : web-server : 컨테이너를 띄울 때 붙이는 별칭이다 : CLI에서 --name web-server 역할과 동일하다
- image: nginx : 컨테이너를 실행시킬 때 어떤 이미지를 사용할 지 정의하는 명령어이다 $ docker run [이미지명]와 동일한 역할이다
- ports : 포트 매핑은 어떻게 할 지를 설정하는 옵션이다. CLI에서 -p 80:80 역할과 동일하다
2. compose 파일 실행시키기
$ docker compose up -d
3. compose 실행 현황 보기
$ docker compose ps
$ docker ps
4. localhost:80 들어가보기

5. compose 실행된 컨테이너 삭제
$ docker compose down'Docker' 카테고리의 다른 글
| 자주 사용하는 Docker Compose CLI 명령어 (0) | 2026.09.01 |
|---|---|
| Docker Compose 전체 흐름 느껴보기 (Nginx 설치 및 실행) (0) | 2026.09.01 |
| [Docker] Nginx 이미지로 프론트엔드 서버 실행하기 (0) | 2026.08.12 |
| [Docker] RUN·WORKDIR·EXPOSE로 Nest.js 실행하기 (0) | 2026.08.12 |
| [Docker] COPY·ENTRYPOINT 명령어와 Spring Boot 배포 실습 (0) | 2026.08.12 |