강의와 책과 스터디

K8S - continerd가 뭐냐. Docker랑 뭐가 다른거지?

우당탕 오리의 개발모험 2026. 3. 8. 20:17

'컨테이너' 단어가 들어간거보니 얘도 도커랑 비슷한 일을 하는 앤가보다.

 

📍containerd(컨테이너디)

런타임, 가볍, 안정적, 이식성

원래 Docker의 일부였지만 지금은 독립적 프로젝트.

 

📍도커랑 차이점

대체제가 아님. '포함 관계'임 ?!

 

Docker

사용자 친화 플랫폼. 도구모음.

CLI, 빌드도구, AIP, GUI, containerd 포함

무거움(사람이 쓰기 편함)

      VS

continerd

핵심 컨테이너 실행 엔진

컨테이너 실행에 필요한 최소한의 기능만 포함

가벼움(시스템/기계가 쓰기 편함)

 

📍왜 K8s의 표준이 continerd가 되었나?

'효율성' 때문.

 

  1. Docker Sim 제거: 에전에는 K8s가 도커를 쓰려면 'K8s -> Dockershim -> Docker -> continerd' 단계를 거쳐야 했음. 즉,wmr, continerd를 쓰기까지 중간단계가 너무 많았음. 지금은 'K8s -> continerd'로 직접/간편하게 통신하여 불필요한 메모리 소모 줄임.
  2. 표준 준수(CRI): K8s의 컨테이너 런타임 인터페이스(CRI)라는 표준규격을 상요함. continerd는 CRI 완벽 지원.
  3. 가볍고 안정적: K8s 운영할 때는 도커의 사용자 친화적 기능은 필요없음(UI, 빌드도구 등). 오직 컨테이너만 잘 돌리면 됨. 즉, continerd만 있으면 됨

 

📍코딩/운영 관점에서 변화

개발자가 코드짤 때는 변하는거 없음.

여전히 도커로 이미지 빌드하고 로컬에서 테스트 가능. 다만, 쿠버네티스 서버 내부에서 돌아가는 방식만 더 가볍게 최적화 된 것.

 

단! 쿠버네티스 노드 내에서 docker ps 명령어 대신 crictl 명령어로 컨테이너를 확인해야함!