- 소프트웨어를 컨테이너(Container)라는 가벼운 가상화 환경에서 실행할 수 있도록 도와주는 플랫폼이다.
- 애플리케이션과 그 의존성을 독립된 환경에서 실행할 수 있게 되어, 개발과 운영 환경 간의 일관성을 유지할 수 있다.
- 서로 다른 환경에서 애플리케이션을 동일한 환경에서 실행할 수 있다는 점
컨테이너(Container)
- 컨테이너는 애플리케이션과 그 의존성을 포함한 독립된 실행 환경이다.
- 호스트 운영체제와 커널을 공유하면서도 격리된 환경을 제공하여 애플리케이션이 다른 애플리케이션과 충돌하지 않도록 한다.
- 컨테이너는 가상 머신보다 가볍고 빠르게 실행된다.
이미지(Image)
- 도커 이미지는 컨테이너를 실행하기 위한 읽기 전용 템플릿이다.
- 애플리케이션과 그 의존성, 실행 환경 설정 등을 포함한다.
- 이미지는 여러 계층(layer)으로 구성되며, 각 계층은 파일 시스템의 특정 상태를 나타낸다.
도커파일(Dockerfile)
- 도커 이미지를 만들기 위한 텍스트 파일로, 이미지 빌드 과정을 정의한다.
- 애플리케이션 설치, 환경 설정, 필요한 파일 복사 등의 명령어를 포함한다.
도커 허브(Docker Hub)
- 도커 이미지를 저장하고 공유하는 온라인 레지스트리다.
- 도커 허브에서 다양한 공개 이미지를 다운로드하여 사용할 수 있다.