Docker 관련 검색을 할 때 Docker가 Linux의 namespace, cgroup 기능을 이용하여 컨테이너를 관리한다는 글을 종종 보았었다. 하지만 Linux 내부 구조를 잘 아는 것도 아니고 Docker 입문자로서 기능 숙지에 중점을 두고 공부했었기에 namespace, cgroup을 어떻게 활용한다는 건지는 잘 몰랐었다. Docker 기본 기능에 대한 숙지가 끝난 지금, Docker의 내부 구조에 대해 좀 더 파보고 싶어서 서치를 하던 중 이 글을 발견하였고 Docker가 Linux의 namespace, cgroup을 어떻게 활용하는지 한층 더 이해할 수 있게 되었다. 이외에도 우리가 terminal에 docker 명령어를 입력하면 어떠한 흐름으로 container가 반응하는지 (docker CLI -> containerd -> shim -> runc)에 대해 좋은 설명이 있는 글이다.
2. OCI와 CRI 중심으로 재편되는 컨테이너 생태계: 흔들리는 도커(Docker)의 위상
예전에 컨테이너라고하면 Kubernetes + Docker를 많이 떠올렸다. 하지만 이 시기는 아직 컨테이너 표준이 완전히 자리잡지 않았었기 때문에 이식성(Portability)이 좋지 않았다. 최근에는 이러한 단점을 보안하고자 컨테이너 생태계에 컨테이너 표준 정립이 진행중이다. 이 표준을 만들기 위해 OCI(Open Container Initiative)를 구성하고 쿠버네티스의 컨테이너 런타임을 만들기 위한 CRI(Container Runtime Interface)가 등장했다.
'Development Experience > *Ops' 카테고리의 다른 글
Docker Swarm vs Kubernetes (feat. Container Orchestration) (0) | 2022.03.11 |
---|---|
도커라이징(Dockerizing) 이란? (0) | 2022.02.11 |
Rocky OS selinux 무한 재부팅 (0) | 2022.02.07 |
GCP(Google Cloud Platform)와 MLOps (0) | 2022.01.04 |
SonarQube 라이센스 구입기 (0) | 2021.06.15 |