Docker Compose

2025. 12. 3. 15:39·docker

# Docker Compose란?

Docker Compose는 여러 개의 Docker 컨테이너를 하나의 서비스 단위로 정의하고 관리할 수 있는 도구이다.
여러 컨테이너로 구성된 애플리케이션을 한 번에 실행, 중지, 관리할 수 있게 해 준다.


# Docker Compose를 사용하는 이유

컨테이너 관리 용이
여러 컨테이너로 이루어진 복잡한 애플리케이션을 한 번에 실행하고 관리할 수 있다.
→ 예: MySQL, Nginx, Redis 등을 각각 개별 명령어로 실행할 필요 없이 Compose 파일 하나로 관리 가능.

명령어 간소화
기존 Docker CLI 명령어는 옵션이 복잡함.
Docker Compose에서는 단순히 docker compose up만 실행하면 된다.
docker run -e MYSQL_ROOT_PASSWORD=password123 -p 3306:3306 -v /path/to/data mysql​

 

환경 통합 관리
여러 컨테이너를 하나의 네트워크와 볼륨 환경에서 실행할 수 있어 환경 구성과 유지보수가 쉬워진다.

# Compose 파일 예제 (compose.yml)

services:
  webserver:
    container_name: webserver    # 컨테이너 별칭
    image: nginx                 # 사용할 이미지
    ports:
      - "80:80"                  # 포트 매핑

services : 관리할 컨테이너 그룹

container_name : 컨테이너 이름 지정

image : 사용할 Docker 이미지 지정

ports : 호스트와 컨테이너 간 포트 매핑


# Compose 명령어 사용법

기능 명령어
컨테이너 실행 docker compose up (포그라운드) / docker compose up -d (백그라운드)
실행 중 컨테이너 확인 docker compose ps
모든 컨테이너 확인 docker compose ps -a
로그 확인 docker compose logs
컨테이너 종료 docker compose down
이미지 재빌드 후 실행 docker compose up --build / docker compose up --build -d
이미지 다운로드/업데이트 docker compose pull

 v1(docker-compose) 명령어는 업데이트 지원이 중단되었으므로 v2(docker compose) 사용 권장.


# Docker Compose 실행 흐름 예시 (Nginx)

Compose 파일 작성 (compose.yml)

services:
  webserver:
    container_name: webserver    # 컨테이너 별칭
    image: nginx                 # 사용할 이미지
    ports:
      - "80:80"                  # 포트 매핑

컨테이너 실행

docker compose up -d

 

실행 상태 확인

docker compose ps

 

브라우저에서 localhost:80 접속 확인

종료 시

docker compose down

'docker' 카테고리의 다른 글

도커 볼륨(=Docker Volume)  (0) 2025.12.03
Docker  (1) 2025.11.28
'docker' 카테고리의 다른 글
  • 도커 볼륨(=Docker Volume)
  • Docker
차하비
차하비
chadev 님의 블로그 입니다.
  • 차하비
    chadev
    차하비
  • 전체
    오늘
    어제
    • 분류 전체보기 (47)
      • kubernetes, k8s (3)
      • docker (3)
      • cloud (6)
      • linux (12)
      • spring (7)
      • java (11)
      • error (4)
      • 자격증 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    객체지향
    k8s
    모놀리식
    Spring
    Java
    url
    docker
    Kubernetes
    OOP
    thread
    monolithic
    Join
    클래스
    HTTP
    URI
    KUBECTL
    진법
    비트 연산
    restAPI
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
차하비
Docker Compose
상단으로

티스토리툴바