docker

Docker는 OS 수준의 가상화를 사용하여 컨테이너라는 패키지로 소프트웨어를 제공하는 플랫폼입니다.

Docker를 사용하면 개발자는 애플리케이션을 모든 종속성, 라이브러리 및 구성과 함께 컨테이너로 패키징할 수 있습니다. 이 컨테이너는 호스트 운영 체제 및 다른 컨테이너로부터 격리되어 다양한 환경에서 일관성을 보장합니다. Docker 컨테이너는 가볍고, 휴대성이 뛰어나며, 효율적이어서 최신 소프트웨어 개발 및 배포에 이상적입니다.

Docker는 호스트 OS 커널을 사용하는 가상화 형태인 컨테이너화를 활용합니다. 가상 머신과 달리 컨테이너는 호스트 OS 커널을 공유하여 리소스 효율성이 높고 시작 속도가 빠릅니다. 이러한 접근 방식을 통해 개발자는 개발 머신에서 프로덕션 서버에 이르기까지 다양한 환경에서 애플리케이션을 일관되게 구축, 배포 및 실행할 수 있습니다.

        graph LR
  Center["docker"]:::main
  Pre_operating_systems["operating-systems"]:::pre --> Center
  click Pre_operating_systems "/terms/operating-systems"
  Rel_kubernetes["kubernetes"]:::related -.-> Center
  click Rel_kubernetes "/terms/kubernetes"
  Rel_microservices["microservices"]:::related -.-> Center
  click Rel_microservices "/terms/microservices"
  Rel_devops["devops"]:::related -.-> Center
  click Rel_devops "/terms/devops"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 지식 테스트

1 / 3

🧒 5살도 이해할 수 있게 설명

📦 A tool that puts your software in a 'magic box' so it works exactly the same on your laptop, a server, or a cloud provider.

🤓 Expert Deep Dive

## Containers vs. Virtual Machines
- Virtual Machines: Each VM includes a full copy of an operating system, the application, and necessary binaries. This makes them slow to start and resource-heavy.
- Docker Containers: Containers share the host system's kernel. They only include the application and its specific dependencies. This makes them 10x to 100x more efficient than VMs and allows them to start in milliseconds.

🔗 관련 용어

선행 지식:

📚 출처