Docker Compose:
여러 개의 Docker 컨테이너들을 하나의 서비스로 정의하고 구성해 하나의 묶음으로 관리할 수 있게 도와주는 툴
장점:
1. 여러 개의 컨테이너를 관리하는 데 용이(여러 컨테이너를 하나의 환경에서 실행하고 관리)
2. 복잡한 명령어를 간소화 시킬 수 있음.
[compose.yml]
services:
my-web-server:#service == 하나의 컨테이너 의미. 서비스에 이름을 붙이는 기능
container_name : webserver # 컨테이너 별칭
image: nginx # docker run 이미지명 과 동일한 역할
ports:
- 80:80 # -p 80:80 과 동일. 포트매핑
#compose 파일 실행
$ docker compose up -d # -d 백그라운드 실행 의미
#compose 실행현황
$docker compose ps # compose.yml에 정의된 컨테이너 중 실행 중인 컨테이너 보여줌
$docker compose ps -a # compose.yml에 정의된 모든 컨테이너 보여줌
$ docker ps
$ docker compose logs # compose.yml에 정의된 모든 컨테이너의 로그 모아서 출력
#compose.yml에서 정의한 이미지 파일에서 코드 변경된 경우 이미지 재빌드 후 컨테이너 실행.
$ docker compose up --build #포그라운드
$ docker compose up --build -d #백그라운드
# docker compose up : 이미지가 없을때만 빌드해서 컨테이너 실행.
# docker compose up --build : 이미지가 있건 없건 무조건 재빌드 후 컨테이너 실행
#compose.yml에 정의된 이미지 다운(이미지 없을때) or 업데이트(Dockerhub 이미지와 다를때)
$ docker compose pull
#compose로 실행된 컨테이너 종료
$ docker compose down
명령어들은 compose.yml이 존재하는 디렉토리에서 실행.
Docker CLI -> compose.yml변환
Composerize
Say goodbye to sprawling docker commands and say hello to $ docker-compose up :) Looking for the reverse (Docker compose to docker run command(s)) ? Try Decomposerize Want to convert from Docker compose file formats ? Try Composeverter Paste your docker ru
www.composerize.com
compose.yml -> Docker CLI 변환
https://www.decomposerize.com/
Decomposerize
Convert your docker compose file to $ docker run command(s) :) Paste your docker compose file content into the box below! Looking for the reverse (docker run command(s) to Docker compose) ? Try Composerize Want to convert from Docker compose file formats ?
www.decomposerize.com
'개발공부' 카테고리의 다른 글
| [Redis] 사용법 (0) | 2026.03.12 |
|---|---|
| [Redis] Redis 개념 (0) | 2026.03.12 |
| [Docker] Dockerfile (0) | 2026.03.11 |
| [Docker] Docker CLI (0) | 2026.03.11 |
| [Docker] Docker 기본 개념 (0) | 2026.03.09 |