도커 컴포즈 커맨드
컴포즈 파일
을 작성했으니 도커 컴포즈 커맨드
를 실행해야 한다.
도커 컴포즈는 docker-compose
명령을 사용한다. 자주 사용하는 건 up과 down이고 종종 stop도 사용한다. 각 커맨드에 대해 살펴보겠다.
docker-compose up 커맨드 : 컨테이너와 주변 환경을 생성
컴포즈 파일의 내용에 따라
컨테이너와 볼륨, 네트워크를 생성하고 실행한다. 컴포즈 파일의 경로는 -f 옵션
을 사용해서 지정한다.
(-f 옵션
이 없다면 현재 작업 디렉토리
를 경로로 설정한다)
docker-compose -f 정의_파일_경로 up 옵션
ex) docker-compose -f C:/Users/Documents/docker-compose.yml up -d
- 옵션 항목 : 공식 문서
옵션 | 내용 |
---|---|
-d | 백그라운드로 실행 |
--no-color | 화면 출력 내용을 흑백으로 함 |
--no-deps | 링크된 서비스를 실행하지 않음 |
--force-recreate | 설정 또는 이미지가 변경되지 않더라도 컨테이너를 재생성 |
--no-create | 컨테이너가 이미 존재하는 경우 다시 생성하지 않음 |
--build | 컨테이너를 실행하기 전에 이미지를 빌드 |
--abort-on-container-exit | 컨테이너가 하나라도 종료되면 모든 컨테이너를 종료 |
-t, --timeout | 컨테이너를 종료할 때의 타임아웃 설정. 기본은 10초 |
--remove-orphans | 컴포즈 파일에 정의되지 않은 서비스의 컨테이너를 삭제 |
--scale | 컨테이너의 개수를 변경 |
docker-compose down 커맨드 : 컨테이너와 네트워크를 삭제
컴포즈 파일의 내용에 따라
컨테이너와 네트워크를 종료 및 삭제한다. 볼륨과 이미지는 삭제되지 않는다.
마찬가지로 경로는 -f 옵션
으로 지정한다.
docker-compose -f 정의_파일_경로 down 옵션
ex) docker-compose -f C:/Users/Documents/docker-compose.yml down -d
- 옵션 항목 : 공식 문서
옵션 | 내용 |
---|---|
--rmi 종류 | 삭제 시 이미지도 함께 삭제한다. all 이라 하면 사용했던 모든 이미지가 삭제된다. local 이라 하면 커스텀 태그가 없는 이미지만 삭제된다 |
-v, --volumes | volumes 항목 에 기재된 볼륨을 삭제한다.(단, external로 지정된 볼륨 은 삭제되지 않는다 |
--remove-orphans | 컴포즈 파일에 정의되지 않은 서비스의 컨테이너도 삭제한다 |
docker-compose stop 커맨드 : 컨테이너의 종료
컴포즈 파일의 내용에 따라 컨테이너를 종료한다. 마찬가지로 -f 옵션
을 이용해서 컴포즈 파일의 경로
를 지정한다.
docker-compose -f 컴포즈_파일_경로 stop 옵션
도커 컴포즈로 실행한 컨테이너 이름
docker compose
로 실행한 컨테이너 역시 도커 엔진
을 통해 관리할 수 있다. 여기서 주의할 점은 도커 컴포즈로 실행한 컨테이너
의 이름은 임의로 결정된다는 점이다.
ex) com_folder
에 위치한 컴포즈 파일을 사용해 penguin 컨테이너
를 생성
⇒ 도커 컴포즈가 실제로 생성한 컨테이너의 이름은 com_folder_penguin_1
과 같이 폴더 이름
과 번호
가 붙는다.
(-f 옵션을 생략했다면 폴더 이름은 붙지 않는다.)
하지만, 위와 같이 폴더 이름
과 번호
가 붙어도도커 컴포즈
를 통해 컨테이너를 지정할 때는 기존에 컴포즈 파일에 기재한 원래 이름을 사용할 수 있다.
이렇게 번호가 붙은 컨테이너 이름은 도커 엔진
을 통해 컨테이너를 관리하거나 같은 구성의 컨테이너를 여러 세트 실행했을 때 사용된다. 따라서, 도커 엔진
을 통해 컨테이너를 다룰 때 ps 커맨드
를 이용해서 컨테이너의 실제 이름을 확인
해야 한다.
'Docker' 카테고리의 다른 글
[Docker] Dockerfile reference - Environment Replacement (0) | 2023.08.23 |
---|---|
[Docker] Dockerfile reference - Format, Parser Directives (0) | 2023.08.21 |
[Docker] 7-3. 도커 컴포즈 파일 내용 (0) | 2023.05.30 |
[Docker] 7-2. 도커 컴포즈 설치 및 사용법 (0) | 2023.05.30 |
[Docker] 7-1. 도커 컴포즈란? (0) | 2023.05.30 |