한 권으로 배우는 도커 & 쿠버네티스 정리 (1)

그레이쁘·2026년 3월 21일

Today I Learned

목록 보기
8/10

한 권으로 배우는 도커 & 쿠버네티스

사전지식

운영체제

프로그램을 실행하는데 필요한 시스템 소프트웨어

하드웨어, 소프트웨어 자원을 관리하고 이를 위해 스케줄링 기능과 프로그램이 실행될 수 있는 환경을 제공

프로그램

실행 가능한 명령어의 집합

하드디스크와 같은 저장 장치에 저장, 메모리에는 올라가지 않은 정적인 상태

프로세스

실행 중인 프로그램

RAM(메모리)에 존재하는 동적인 상태의 프로그램

멀티 프로세스: 디스크에 존재하는 프로그램을 여러 번 실행하여 여러 개의 프로세스를 작동시키는 것

스레드

프로세스가 할당받은 자원을 이용하는 실행 단위 = 프로세스 내에 실행되는 여러 흐름의 단위

프로세스는 최소 한 개 이상의 스레드를 가지며, 이 기본 스레드가 메인 스레드이다

프로세스가 스레드의 컨테이너 역할을 하며, 스레드의 정보를 담고 있다

네임스페이스

프로세스를 실행할 때 시스템 리소스를 분리해서 실행할 수 있도록 도와주는 기능

pid: Process ID리눅스 커널의 프로세스 ID 분리
net: Networking네트워크 인터페이스 관리
ipc: Inter Process Communication프로세스 간 통신 접근 관리
mnt: Mount파일 시스템의 마운트 관리
uts: Unix Timesharing System커널과 버전 식별자 관리

도커 기초지식

도커란?

2008년 설립된 DotCloud라는 회사에서 2013년 PaaS 형태로 출시된 소프트웨어

호스트의 OS 커널을 공유할 수 있도록 효율적으로 쪼개어 (가상화), 프로그램이 어디서든 잘 돌아가도록
코드를 하나의 이미지로 묶어 (컨테이너) 쉽게 배포할 수 있게 도와주는 도구

구분IaaS (Infrastructure)PaaS (Platform)SaaS (Software)
비유땅과 전기만 빌려줌주방 도구와 가스레인지까지 빌려줌이미 완성된 요리를 배달해줌
사용자 관리OS 설치, 런타임 설정, 보안 패치 등애플리케이션 코드, 데이터없음 (설정만 사용)
대표 예시AWS EC2, Azure VMVercel, Netlify, HerokuGmail, Slack, Notion

도커는 컨테이너 단위로 애플리케이션을 실행하는데 컨테이너들이 서로 격리되어 있으므로 독립성을 보장

각 컨테이너는 애플리케이션을 실행하는데 필요한 최소한의 바이너리, 라이브러리를 포함

컨테이너란?

소프트웨어를 배포할 때 필요한 코드, 라이브러리, 환경 설정 파일들을 한데 모아 격리시킨 후
실행가능한 패키지로 만든 것

컨테이너들은 동일한 운영체제 위에서 작동하기 대문에, 서로 통신을 주고받을 수 있음

가상머신에 비해서도 리소스 소모량이 적다

profile
그냥 걷는 사람🚶‍♀️

0개의 댓글