태그: 컨테이너
13편
-
Linux 시리즈 #09 — Namespace·cgroups: 컨테이너 격리와 리소스 제한의 커널 기반
unshare·clone·setns로 PID·네트워크·마운트 namespace를 직접 만들어 보고, cgroup v2의 cpu.max·memory.max·pids.max로 자원 한도를 거는 방법, systemd slice와 Docker가 같은 커널 기능을 어떻게 쓰는지 예제로 연결합니다.
-
개발자가 알아야 할 도커 필수 명령어 및 활용법 | 실무 CLI 치트시트
컨테이너가 계속 재시작되거나 디스크가 가득 찼을 때 쓰는 도커 CLI 명령을 상황별로 정리했습니다. docker run 옵션 조합, ps·logs·exec·inspect 디버깅, stats 모니터링, prune 정리, 레지스트리 push·pull, 빌드 캐시 활용법을 다룹니다.
-
C++ STL 컨테이너: 연산별 성능 비교와 상황별 선택 기준
vector, map, unordered_map, deque, list의 내부 구조와 반복자 무효화 규칙, 메모리 할당 전략, 캐시 성능 차이를 측정 방법과 함께 비교하고 상황별 컨테이너 선택 기준을 정리합니다.
-
MP4·WebM·MKV 컨테이너 내부 구조 심화 | 뮤싱·시크·fMP4·메타데이터
MP4의 트랙·샘플·청크 모델과 Matroska의 EBML·Cluster 구조를 비교하며, 뮤서와 디먹서가 파일을 조립·분해하는 방식, stbl 테이블과 Cues로 시크하는 원리, 단편 MP4와 일반 MP4의 선택 기준을 설명합니다.
-
Docker 멀티스테이지 빌드: 레이어 캐시 순서, BuildKit 캐시 마운트, distroless로 이미지 줄이기
빌드 스테이지와 런타임 스테이지를 나눠 Node.js·Go·Rust·Python 이미지를 가볍게 만드는 Dockerfile 작성법을 예제로 보여 줍니다. 레이어 캐시 순서, BuildKit 캐시 마운트, distroless와 Alpine 선택, COPY --from 실패와 런타임 의존성 누락 같은 문제도 다룹니다.
-
MP4 vs MKV vs WebM 컨테이너 비교: 호환성, 스트리밍, 자막
웹 배포, 블루레이 아카이브, 온라인 강의처럼 목적이 다를 때 MP4·MKV·WebM 중 무엇을 쓸지 코덱 조합·자막·스트리밍·편집 툴 지원 기준으로 비교하고, 컨테이너 간 리먹스 FFmpeg 명령을 제공합니다.
-
MKV(Matroska) 컨테이너 실전 활용 | EBML·다중 자막·FFmpeg 리먹스
Matroska의 EBML·Segment·Cluster 구조를 이해한 뒤, FFmpeg와 mkvtoolnix로 다중 오디오·자막 트랙과 챕터를 추가·제거하고 MKV를 MP4로 리먹스하는 방법, 브라우저 재생 실패 같은 문제의 해결법을 다룹니다.
-
MP4 컨테이너 구조: ISO BMFF 박스, moov·mdat, fMP4와 FFmpeg 실전
MP4의 ftyp·moov·mdat 박스 배치가 재생 시작 속도에 주는 영향을 설명하고, -movflags +faststart와 fragmented MP4 생성, HLS 세그먼트 출력, 웹·모바일 호환성을 맞추는 FFmpeg 명령을 사례별로 제공합니다.
-
WebM 컨테이너 웹 표준 | VP9·AV1·Opus·HTML5·FFmpeg 입문
WebM이 Matroska에서 허용 코덱을 VP8·VP9·AV1과 Vorbis·Opus로 좁힌 이유를 설명하고, HTML5 video 태그용 인코딩, 다중 품질 출력과 배치 처리, 스트리밍 최적화를 위한 FFmpeg 명령을 입문자 눈높이에서 다룹니다.
-
C++ emplace_back vs push_back: 실제 성능 차이와 언제 다른지
emplace_back은 인자를 받아 컨테이너 안에서 바로 객체를 생성하고, push_back은 이미 만든 객체를 복사하거나 이동합니다. 단순 타입과 복잡한 객체 벤치마크로 실제 차이가 언제 생기는지 확인하고, map·set에서의 emplace 사용도 다룹니다.
-
C++ vector vs list vs deque: 내부 구조와 벤치마크로 보는 컨테이너 선택
vector, list, deque의 내부 구조와 시간 복잡도를 비교하고, 뒤·앞·중간 삽입과 순회, 랜덤 접근 벤치마크로 실제 성능 차이를 확인합니다. 중간 삽입이 많아도 vector가 list보다 빠른 경우가 많은 이유를 캐시 효율로 설명합니다.
-
C++ std::vector 기초: 생성·삽입·삭제와 배열 대신 쓰는 이유
크기가 고정되고 범위 검사도 없는 C 배열 대신 std::vector를 쓰는 이유를 선언, 추가·삭제, operator[]와 at() 차이, 2차원 벡터, sort·find 예제로 보여줍니다. size()를 int로 받는 실수, 반복 중 삭제, reserve와 resize 혼동도 다룹니다.
-
Docker DevContainer로 C++ 빌드 환경 통일하기
C++ DevContainer와 Docker 실전 가이드입니다. 멀티 스테이지 빌드, vcpkg/Conan 패키지 관리, VS Code Dev Container 설정, GDB 디버깅까지 다루며 팀 전체 빌드 환경을 5분 안에 통일하는 방법을 설명합니다.