Docker란?

정다영·2023년 4월 29일
0

Docker란?

  • Go언어로 작성된 리눅스 컨테이너 기반으로하는 오픈소스 가상화 플랫폼
  • 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징하며, 컨테이너는 라이브러리, 시스템 도구, 코드 등 소프트웨어 실행에 필요한 모든 것이 포함한다.

Docker 사용 이유

  • 도커를 통해 애플리케이션을 실행하면 독립적인 환경에서 일관된 결과를 보장한다.

도커의 핵심 개념은 이미지와 컨테이너를 생각하면 된다.❗

컨테이너란?

응용프로그램을 빠르고 쉽게 시작할 수 있는 portable units

  • 격리된 공간에서 프로세스가 동작하는 기술
  • 기존의 가상화 방식인 OS 가상화가 아닌 프로세스를 격리하는 방식으로 동작한다.
    장점
  1. 단순히 프로세스를 격리하기 때문에 가볍고 빠르다.
  2. CPU나 메모리는 프로세스가 필요한 만큼만 추가 사용하여서 성능적으로 거의 손실이 없다.

Docker 이미지란?

  • 도커 이미지는 소스 코드, 라이브러리, 종속성, 도구 및 응용 프로그램을 실행하는데 필요한 기타 파일을 포함하는 불변(변경 불가) 파일를 의미한다.
  • Application을 포장 및 전송하기 위해 도커는 "docker image"를 사용한다.
  • Docker image는 파일로 어플리케이션 실행에 필요한 독립적인 환경을 포함한다.

특징
1. 컨테이너를 생성하는 이미지 베이스는 별도로 존재하며 변경할 수 없다.
2. 이미지는 템플릿일 뿐이므로 시작하거나 실행할 수 없다. 컨테이너는 실행 중인 이미지일 뿐이기 때문이다.

Dockerfile이란?

Dockerfile --(Build)--> Image --(Create)--> Container

  • 도커 이미지를 빌드하는 방법(환경정보 저장)을 정의하는 스크립트
profile
Hello World~

0개의 댓글