"컨테이너는 경량 VM 이 아니다." docker run 한 줄 뒤에는 7가지 Linux namespace, cgroups v2, OverlayFS 계층, seccomp 필터, Linux capabilities가 작동한다. 2008년 LXC에서 2013년 Docker 등장, 2015년 OCI 표준화, 2024년 현대 런타임 진화까지 — 컨테이너가 어떻게 VM 없이 격리를 만드는지, 왜 Docker가 VM 보다 100배 빠른지, 보안적으로 여전히 위험한 경계가 어디인지, 그리고 Kubernetes가 왜 Docker 가 아닌 containerd 를 기본으로 쓰는지.
컨테이너의 모든 것 — 1979년 chroot에서 시작해 FreeBSD jails, Solaris zones, Google cgroups(2006), LXC, Docker(2013), OCI 표준화까지의 역사. 8가지 Linux namespaces, cgroups v1과 v2, OCI Runtime Specification, runc와 containerd 스택, OCI 이미지 layer 모델, overlayfs CoW, capabilities/seccomp/AppArmor 보안 계층, rootless 컨테이너, Kubernetes 통합까지 1,400줄로 정리한 컨테이너 내부 구조 딥다이브.
epoll의 후계자 io_uring, Docker를 만든 cgroups + namespaces, 커널에 안전하게 코드를 주입하는 eBPF, NUMA가 주는 숨은 비용, GPU 드라이버와 UVM, 2024년 Linux에 들어온 EEVDF 스케줄러, Zero-Copy + RDMA, WSL2. 앱 밑에서 OS가 하는 모든 일을 현대적 관점으로 한 번에 정리.
Docker와 Podman의 아키텍처 차이부터 이미지 관리, 컨테이너 라이프사이클, 네트워크, 볼륨, Docker Compose vs Podman Compose, 보안(Rootless), 멀티스테이지 빌드, 디버깅까지 — 컨테이너 운영에 필요한 모든 명령어를 실전 예제와 함께 체계적으로 정리한다.
Podman의 데몬리스 아키텍처, 루트리스 보안 모델, play kube를 통한 K8s YAML 로컬 실행, Pod 단위 관리, Pasta 네트워킹까지 — Docker를 넘어 클라우드 네이티브 개발 환경의 새로운 표준이 된 Podman의 5가지 혁신을 아키텍트 관점에서 심층 분석한다.