목록Container (3)
희원이 블로그

1. Layer (레이어) 도커의 레이어 개념은 이미지를 효율적으로 저장하고 관리할 수 있는 핵심 개념입니다. 도커 이미지는 여러 개의 Read Only 레이어로 구성되고, 파일이 추가되거나 수정되면 새로운 레이어가 생성됩니다. 이미지의 공통된 부분을 재사용하고 변경 사항만 새로운 레이어로 추가함으로써 효율적인 이미지 관리가 가능합니다. 도커 컨테이너는 이미지 레이어 상단에 추가적인 Writeable한 레이어를 가지며, 컨테이너가 실행 중에 변경사항은 이 Writeable 레이어에 저장됩니다. 예시로, 우분투 이미지(A + B + C의 집합)를 기반으로 만든 nginx 이미지는 A + B + C + nginx로 구성됩니다. 이후 web app 이미지가 nginx 이미지를 기반으로 만들었다면 A + B +..

1. 하이퍼바이저 vs 컨테이너 하이퍼바이저 기반 가상화 컨테이너 기반 가상화 가상화 유형 하드웨어 가상화 운영체제 수준 가상화 시작 시간 느림 (몇 분) 빠름 (몇 초) 스케일링 느림 빠름 격리 강력한 격리 제한된 격리 (OS 커널 공유) 이미지 크기 수 GB ~ 수백 GB (OS를 포함하여 애플리케이션과 필요한 런타임 소프트웨어 필요) ~ 수백 MB (애플리케이션 및 종속성만 필요) 게스트 OS Windows/Linux 등 선택 가능 호스트 OS와 동일한 OS 게스트 OS와 관계 게스트 OS는 하드웨어로 인식 호스트 OS를 커널 수준으로 분리하여 OS를 가상화 형태로 사용하여 필요에 따라 호스트와 리소스 공유 가능 이식성 이미지에 대한 변환이 필요함 컨테이너 이미지 그대로 사용 가능 데이터 관리 VM..

1. 컨테이너란? 컨테이너는 하나의 커널을 공유하면서 프로세스를 격리된 환경에서 실행하는 기술입니다. 이는 프로세스 격리 기술을 활용하여 사용자가 실행하려는 프로그램과 관련된 환경 설정을 담아 독립적인 실행 환경에서 작동하는 것으로 이해할 수 있습니다. 이번 글에서는 컨테이너가 왜 도입되었는지, 기반 기술이 무엇인지 알아보도록 하겠습니다. 2. 가상머신의 한계와 chroot의 등장 가상머신은 아래 사진과 같이 애플리케이션 → 게스트 OS → 하이퍼바이저 → 호스트 OS → 하드웨어를 거치면서 동작하므로 무겁고 성능 문제가 있습니다. 이에 대한 대안으로, 1979년에 시스템의 root 구성을 임의로 구성한 위치로 바인딩하는 chroot라는 명령이 나오면서 컨테이너 기술의 초기 형태를 갖추게 되었습니다. 3..