>  기사  >  운영 및 유지보수  >  도커 이미지의 전송 계층화입니까?

도커 이미지의 전송 계층화입니까?

WBOY
WBOY원래의
2022-08-17 16:33:492840검색

Docker 이미지 전송 계층화; Docker 이미지는 레이어로 구축되므로 이미지 구축 과정이 해체되고, 다른 서비스와의 공통점을 찾아 Dockerfile의 각 사양을 기본 이미지로 구성합니다. 새로운 것. 이렇게 하면 디스크 공간이 절약되므로 Docker 이미지 전송이 계층화됩니다.

도커 이미지의 전송 계층화입니까?

이 튜토리얼의 운영 환경: linux7.3 시스템, docker 버전 19.03, Dell G3 컴퓨터.

도커 이미지의 전송 계층화

이미지는 특정 소프트웨어를 실행하는 데 필요한 모든 것이 포함된 가볍고 실행 가능한 독립 소프트웨어 패키지입니다. 코드, 런타임에 필요한 라이브러리, 환경 변수, 구성 파일 등을 포함하여 애플리케이션과 구성을 형성되고 전달 가능하며 배포 가능한 운영 환경으로 패키징합니다. 이 대규모 운영 환경 패키지는 이미지 이미지 파일입니다.

Docker 컨테이너 인스턴스는 이미지 파일을 통해서만 생성할 수 있습니다.

docker image layering

의미: 이미지를 구축하는 과정을 분해하고, 다른 서비스와의 공통점을 찾아 베이스 이미지로 공식화합니다.

장점: 디스크 공간 절약,

이미지 업로드/다운로드 시 기본 이미지가 이미 존재하는 경우 반복적으로 업로드 및 다운로드되지 않아 업로드 및 다운로드 속도가 향상됩니다.

단점: 기본 이미지가 변경되면 모든 하위 이미지가 - 거울이 바뀔 거예요.

Docker 이미지 계층화 메커니즘

Docker 이미지는 계층으로 구축됩니다. Docker에 대해 자세히 알아보면 Dockerfile의 각 사양이 새 계층을 생성한다는 것을 이해하게 됩니다. 다음 Dockerfile 지침을 예로 들어 보겠습니다.

FROM ubuntu:20.04#基础镜像
COPY . /app#复制文件
RUN make /app#编译文件
CMD python /app/app.py#入口文件

위의 4개 지침은 각 계층에서 이 계층이 수행한 변경 사항만 기록하며 이러한 계층은 읽기 전용 계층입니다. 컨테이너를 시작할 때 상단에 읽기-쓰기 레이어를 추가하는 Docker 명령입니다. 컨테이너에서 이루어진 모든 변경 사항(로그 쓰기, 파일 수정, 삭제 등)은 일반적으로 이 레이어에 저장됩니다. 그림과 같이 컨테이너 레이어라고 합니다.

도커 이미지의 전송 계층화입니까?

사실 컨테이너와 이미지의 주요 차이점은 컨테이너가 최상위 읽기 및 쓰기 레이어를 추가한다는 것입니다. 컨테이너에 대한 모든 수정은 이 레이어에서 이루어지며 이미지는 수정되지 않습니다. 이는 앞서 언급한 COW(기록 중 복사) 기술입니다. 컨테이너가 파일을 읽어야 하는 경우 하위 읽기 전용 레이어에서 직접 읽을 수 있습니다. 파일을 수정해야 하는 경우 파일은 수정을 위해 상위 읽기-쓰기 레이어에 복사되고 읽기 전용 레이어에는 파일이 복사됩니다. 변함없이 유지됩니다.

각 컨테이너에는 자체 읽기-쓰기 레이어가 있으므로 여러 컨테이너가 동일한 이미지를 사용할 수 있습니다. 또한 컨테이너가 삭제되면 해당 읽기-쓰기 레이어도 삭제됩니다. 데이터의 경우 Docker 볼륨을 사용할 수 있습니다.

추천 학습: "docker 비디오 튜토리얼"

위 내용은 도커 이미지의 전송 계층화입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.