#도커
26 편의 글
도커 고급 강좌 #2 멀티 아키텍처 이미지 — amd64와 arm64 한 묶음
Apple Silicon에서 빌드한 이미지가 운영 서버에서 안 뜨는 사고는 멀티 아키텍처 빌드 한 줄로 사라집니다. manifest list의 정체, QEMU emulation의 비용, 네이티브 ARM 빌더, 그리고 docker buildx imagetools로 결과를 검증하는 방법까지 정리합니다.
도커 고급 강좌 #1 BuildKit과 buildx — 빌더의 정체
중급 시리즈에서 켜둔 BuildKit을 한 단계 더 깊이 살펴보겠습니다. LLB와 frontend의 구조, buildx의 builder 인스턴스(docker-container vs docker), --output의 다양한 형태, 그리고 docker buildx bake로 다단 빌드를 선언적으로 묶는 방법까지 정리합니다.
도커 중급 강좌 #6 로깅과 디버깅
여러 컨테이너의 로그를 한곳에서 다루고, log driver를 바꾸고, exec,inspect,stats,dive로 컨테이너 안과 이미지를 들여다봅니다. 도커 중급 시리즈를 한 사이클로 마무리하겠습니다.
도커 중급 강좌 #5 환경변수와 secrets 관리
환경변수 주입의 여러 형태, .env 파일과 변수 보간, env_file vs environment의 차이, compose의 secrets, BuildKit 빌드 시크릿, 그리고 이미지에 비밀이 포함되는 가장 흔한 실수까지 정리합니다.
도커 중급 강좌 #4 compose 심화 — depends_on, healthcheck, profiles
compose.yaml에 운영 감각을 더합니다. healthcheck로 DB가 정말 준비되었는지 보고, depends_on의 condition으로 의미 있는 시작 순서를 잡고, profiles로 dev/test/prod를 한 파일에서 분기합니다. override 파일과 restart 정책까지 정리합니다.
도커 중급 강좌 #3 docker compose 기초 — web + db 한 파일로
Docker Compose는 여러 컨테이너를 한 파일에 정의하고 한 명령으로 띄우는 도구입니다. compose.yaml의 service / network / volume 구조, 실전 web + postgres 셋업, up , down , logs , ps의 일상 흐름까지 정리합니다.
도커 중급 강좌 #2 빌드 캐시 — BuildKit과 레이어 순서 최적화
BuildKit이 기본이 된 도커 빌드의 캐시를 본격적으로 다룹니다. 레이어 캐시가 깨지는 지점을 골라내고, --mount=type=cache로 npm/pip 캐시를 빌드 간 공유하고, COPY --link로 빌드를 병렬화하고, GHA/레지스트리 외부 캐시까지 정리합니다.
도커 중급 강좌 #1 멀티스테이지 빌드와 이미지 슬리밍
멀티스테이지 빌드는 한 Dockerfile 안에 여러 단계를 두고 빌드 의존성과 런타임 의존성을 분리합니다. Go,Node,Python 각자에 맞는 멀티스테이지 패턴, distroless와 scratch까지 이미지를 GB에서 수십 MB로 줄이는 흐름을 정리합니다.
도커 기초 강좌 #6 .dockerignore와 빌드 컨텍스트 — 캐시 잘 쓰기
빌드가 느리거나 이미지가 비대해지는 가장 흔한 원인은 빌드 컨텍스트를 잘못 다룬 것입니다. 컨텍스트가 무엇인지, .dockerignore로 어떻게 깎는지, 그리고 레이어 캐시가 깨지는 지점을 골라내 명령 순서를 잡는 법을 정리합니다. 도커 기초 시리즈를 마무리하겠습니다.
도커 기초 강좌 #5 레지스트리 — Docker Hub, GHCR, push/pull
내가 만든 이미지를 다른 머신에서도 쓰려면 레지스트리에 올려야 합니다. 이미지 이름의 구조, Docker Hub와 GHCR 로그인, tag,push,pull의 흐름, 그리고 다이제스트로 이미지를 정확히 고정하는 방법까지 정리합니다.
도커 기초 강좌 #4 볼륨과 네트워크 — 데이터와 통신
컨테이너가 죽으면 같이 날아가는 데이터를 어떻게 살릴지, 그리고 컨테이너끼리 어떻게 이름으로 통신할지 다루겠습니다. bind mount와 named volume의 차이, bridge / host / none 네트워크 모드, 그리고 -p 포트 매핑까지 한곳에 정리합니다.
도커 기초 강좌 #3 이미지와 컨테이너 — build, run, ps, logs, exec
도커 CLI의 일상 명령군을 한곳에 정리합니다. build의 옵션, run의 자주 쓰는 플래그(-d, --name, --rm, -e), 그리고 ps , logs , exec , stop , rm으로 이어지는 컨테이너 라이프사이클까지 정리합니다.