도커(Docker)의 docker-compose
는 여러 컨테이너로 구성된 애플리케이션을 정의하고 실행하기 위한 도구입니다.docker-compose
를 사용하면 YAML 파일을 통해 애플리케이션의 서비스, 네트워크, 볼륨 등을 정의하고, 단일 명령으로 여러 컨테이너를 일괄적으로 관리할 수 있습니다.
주요 docker-compose
명령어
1. docker-compose up
docker-compose up
명령어는 docker-compose.yml
파일에 정의된 서비스를 시작합니다. 필요한 이미지를 빌드하고 컨테이너를 생성한 후 네트워크를 설정합니다.
사용법
docker-compose up [OPTIONS] [SERVICE...]
주요 옵션
-d, --detach
: 백그라운드에서 컨테이너를 실행합니다.--build
: 컨테이너를 시작하기 전에 이미지를 빌드합니다.--force-recreate
: 기존 컨테이너를 삭제하고 새로 생성합니다.
예시
docker-compose up -d
위 명령어는 docker-compose.yml
파일에 정의된 모든 서비스를 백그라운드에서 실행합니다.
2. docker-compose down
docker-compose down
명령어는 docker-compose.yml
파일에 정의된 모든 서비스를 중지하고 컨테이너, 네트워크, 볼륨 등을 제거합니다.
사용법
docker-compose down [OPTIONS]
주요 옵션
-v, --volumes
: 익명 볼륨을 포함하여 모든 볼륨을 제거합니다.--rmi
: 사용된 이미지를 삭제합니다. (local, all)
예시
docker-compose down
위 명령어는 모든 서비스를 중지하고 생성된 리소스를 제거합니다.
3. docker-compose build
docker-compose build
명령어는 docker-compose.yml
파일에 정의된 서비스의 이미지를 빌드합니다.
사용법
docker-compose build [OPTIONS] [SERVICE...]
주요 옵션
--no-cache
: 빌드할 때 캐시를 사용하지 않습니다.--pull
: 빌드하기 전에 이미지를 항상 풀(pull)합니다.
예시
docker-compose build
위 명령어는 모든 서비스를 빌드합니다.
4. docker-compose ps
docker-compose ps
명령어는 현재 상태의 컨테이너 목록을 출력합니다.
사용법
docker-compose ps [OPTIONS] [SERVICE...]
예시
docker-compose ps
위 명령어는 현재 실행 중인 모든 서비스의 상태를 출력합니다.
5. docker-compose stop
docker-compose stop
명령어는 실행 중인 컨테이너를 중지합니다.
사용법
docker-compose stop [SERVICE...]
예시
docker-compose stop
위 명령어는 모든 실행 중인 서비스를 중지합니다.
6. docker-compose restart
docker-compose restart
명령어는 실행 중인 컨테이너를 재시작합니다.
사용법
docker-compose restart [OPTIONS] [SERVICE...]
주요 옵션
-t, --timeout
: 컨테이너를 중지하고 다시 시작하기 전에 기다릴 시간을 지정합니다.
예시
docker-compose restart
위 명령어는 모든 서비스를 재시작합니다.
7. docker-compose logs
docker-compose logs
명령어는 서비스의 로그를 출력합니다.
사용법
docker-compose logs [OPTIONS] [SERVICE...]
주요 옵션
-f, --follow
: 실시간 로그를 팔로우합니다.--tail
: 마지막 N줄의 로그만 출력합니다.
예시
docker-compose logs -f
위 명령어는 모든 서비스의 실시간 로그를 출력합니다.
8. docker-compose exec
docker-compose exec
명령어는 실행 중인 컨테이너 안에서 명령어를 실행합니다.
사용법
docker-compose exec [OPTIONS] SERVICE COMMAND [ARGS...]
주요 옵션
-d, --detach
: 백그라운드에서 명령어를 실행합니다.--privileged
: 명령어를 프리빌리지 모드에서 실행합니다.
예시
docker-compose exec myservice /bin/bash
위 명령어는 myservice
컨테이너 안에서 /bin/bash
쉘을 실행합니다.
9. docker-compose config
docker-compose config
명령어는 구성 파일을 검증하고 출력합니다.
사용법
docker-compose config [OPTIONS]
주요 옵션
-q, --quiet
: 유효성 검사를 수행하고 유효하지 않으면 오류를 출력합니다.--services
: 서비스 이름만 출력합니다.--volumes
: 볼륨 이름만 출력합니다.
예시
docker-compose config
위 명령어는 docker-compose.yml
파일의 구성을 검증하고 출력합니다.
10. docker-compose pull
docker-compose pull
명령어는 서비스에 필요한 이미지를 도커 레지스트리에서 다운로드합니다.
사용법
docker-compose pull [OPTIONS] [SERVICE...]
주요 옵션
--ignore-pull-failures
: 이미지 풀 실패를 무시합니다.--parallel
: 병렬로 이미지를 다운로드합니다.
예시
docker-compose pull
위 명령어는 모든 서비스에 필요한 이미지를 다운로드합니다.
이 명령어들은 docker-compose
를 사용하여 여러 컨테이너로 구성된 애플리케이션을 관리하고 배포하는 데 필수적인 도구들입니다.docker-compose.yml
파일을 작성하여 애플리케이션의 서비스, 네트워크, 볼륨 등을 정의하고, 위의 명령어들을 통해 효율적으로 관리할 수 있습니다.
'가상 머신 > Docker' 카테고리의 다른 글
[ Docker ] save, export - 도커 이미지, 파일 시스템 저장하기 (1) | 2024.11.30 |
---|---|
[ Docker ] hello-world 실행하기 (0) | 2024.11.30 |
[ 도커 / Docker ] 볼륨 사용하기 (0) | 2024.07.03 |
[ 도커 / Docker ] 네트워크 사용하기 (0) | 2024.07.03 |
[ 도커 / Docker ] 컨테이너 디버깅하기 (0) | 2024.07.03 |