도커 복습과 Kubernetes
도커 복습
도커는 컨테이너를 실행하기 위한 실행 환경(컨테이너 런타임) 및 툴킷 최근에는 도커 이미지가 아닌 OCI 표준의 컨테이너 이미지를 사용하는 방법이나 다른 도구에서 도커 이미지를 빌드하는 방법 등도 존재
도커 이미지를 제대로 만들어 도커 이미지 보관/배포 서버인 도커 레지스트리로 푸시(업로드)하는 방법은 알아두자
도커 컨테이너는 도커 이미지를 기반으로 실행되는 프로세스 도커 이미지만 있다면 환경의 영향을 받지 않고 다양한 환경에서 컨테이너를 기동시킬 수 있다
가상 머신에 비해 가볍고 시작과 중지가 빠르다. 가상 머신은 하이퍼바이저를 이용하여 게스트 OS를 동작시키나, 도커 컨테이너는 호스트 머신의 커널을 이용.
주의점 4가지 (중요도 순서대로)
실습
- HTTP 요청이 오면 'Hello, Kubernetes' 라고 응답하는 Go 언어 애플리케이션을 실행하는 컨테이너 이미지의 생성 방법
멀티 스테이지 빌드 여러 컨테이너 이미지를 사용하여 처리하고 결과물만 실행용 컨테이너 이미지에 복사하는 구조로 도커 이미지 사이즈를 줄일 수 있다.
- 멀티 스테이지 빌드 도커 파일 예제
다이브(Dive)는 도커 이미지를 조사하는 도구. 각각의 레이어에서 어느 파일에 변경이 있어 어느 정도의 용량이 소비되고있는지를 CUI에서 조사할 수 있다.
레이어마다 같은 파일의 변경이 많다면 docker image build 시 --squash 옵션을 사용하면 이미지 축소가 가능하다.
도커 레지스트리를 사용할 땐 신뢰할 수 있는 이미지인지를 확인하고 이용하자. 보안 스캔 도구도 있다.
도커 레지스트리에 이미지를 푸시하는 기본적인 형식은 아래와 같다. Docker 레지스트리 호스트명/네임스페이스/저장소:태그
Last updated