Docker
- 애플리케이션을 개발하고 실행하기 위한 플랫폼
- 격리된 환경(컨테이너)에서 애플리케이션 패키징 + 실행 기능
- 하나의 호스트에서 여러 개의 컨테이너 실행 가능
- 호스트 의존 X
- 쉬운 공유, 동일 환경 제공
Architecture
- 클라이언트 - 서버 구조
- 도커 클라이언트 → 도커 데몬(서버)과 통신
- 도커 클라이언트 → 도커 데몬에 원격 접속 가능
Docker Daemon
- 소켓, 네트워크 인터페이스를 통해 REST API를 사용해 통신
- Docker API 요청을 받아 도커 컨테이너를 빌드, 실행, 배포하는 작업 등 도커 객체 관리
Docker Client
- Docker Daemon과 통신하기 위한 방법
- 명령어를 docker daemon에 전달
Docker Registries
- 도커 이미지 저장
- Docker hub → 공개적인 레지스트리
docker pull
, docker run
→ 설정된 레지스트리에서 필요한 이미지 가져옴