도커 컴포즈의 정의

728x90
반응형

출처 : 그림과 실습으로 배우는 도커 & 쿠버네티스

 

 

도커 컴포즈란

  • 도커 컴포즈란 도커 명령어를 정의 파일에 기술해 실행하는 도구이다.
  • 시스템 구축과 관련된 명령어를 하나의 텍스트 파일(정의 파일)에 기재해 명령어 한번에 시스템 전체를 실행하고 종료와 폐기까지 한번에 하도록 도와주는 도구이다.
  • 도커 컴포즈를 사용하면 여러 개의 명령어를 하나의 정의 파일로 합쳐 실행할 수 있다.

 

도커 컴포즈의 구조

  • 도커 컴포즈는 시스템 구축에 필요한 설정을 YAML(YAML Ain't a Markup Language : YAML은 마크업 언어가 아니다) 포맷으로 기재한 정의 파일을 이용해 전체 시스템을 일괄 실행 또는 일괄 종료 및 삭제할 수 있는 도구이다.
  • 정의 파일에는 컨테이너나 볼륨을 어떠한 설정으로 만들지에 대한 항목이 기재되어 있다. 작성 내용은 도커 명령어와 비슷하지만 도커 명령어는 아니다.

 

  • up 커맨드
    • docker run 커맨드와 비슷하다.
    • 정의 파일에 기재된 내용대로 이미지를 내려받고 컨테이너를 생성 및 실행한다.
    • 정의 파일에는 네트워크나 볼륨에 대한 정의도 기재할 수 있어서 주변 환경을 한꺼번에 생성할 수 있다.
  • down 커맨드
    • 컨테이너와 네트워크를 정지 및 삭제한다.
    • 볼륨과 이미지는 삭제하지 않는다.
    • 컨테이너와 네트워크 삭제 없이 종료만 하고 싶으면 stop 커맨드를 사용한다.

 

 

도커 컴포즈와 Dockerfile 스크립트의 차이점

  • 도커 컴포즈와 Dockerfile 스크립트의 차이점은 만드는 대상이 다르다는 것이다.

 

  • 도커 컴포즈
    • 컨테이너, 네트워크, 볼륨을 만들기 위한 것이다.
    • docker run 커맨드를 여러 개 모아놓은 것과 같다.
    • 컨테이너와 주변 환경을 생성한다.
    • 네트워크와 볼륨까지 함께 생성할 수 있다.
  • Dockerfile 스크립트
    • 이미지를 만들기 위한 것이다.
    • 네트워크나 볼륨은 생성할 수 없다.

 

 

도커 컴포즈와 쿠버네티스의 차이점

  • 쿠버네티스는 컨테이너를 관리하는 도구이다.
  • 도커 컴포즈는 컨테이너를 생성하고 삭제할 뿐, 관리 기능은 없다.

 

 

728x90
반응형