ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Docker Image
    공부합시다!/Container 2022. 3. 1. 11:12
    728x90

    Docker가 점점 흥미진진해 지네요!

    저만.....?

     

    오늘은 Docker의 핵심인 Image에 대해서 살펴보도록 하겠습니다.

     

    1. Docker Image

     1.1. Container 실행에 필요한 파일 및 설정값을 포함하고 있는 것.

      1.1.1ㅣ Immutable(불변)

      1.1.2. 하나의 Image로 여러개의 Container 실행

      1.1.3. Container 상태 변경 및 삭제 시에도 Image는 변하지 않고 존재함.

     1.2. Container 실행에 필요한 모든 정보 보유 :

      1.2.1. 설치 및 Compile 불필요

      ex1) ubuntu image : ubuntu 실행을 위한 모든 파일

      ex2) mysql image : mysql 실행 파일 및 명령어, port 정보 등

     1.3. Docker HUB에 image를 등록하거나 Docker Registry 저장소를 직접 생성 후 관리 가능

    Image
    Docker Store

    2. 왜 굳이 Docker를 사용할까?

     2.1. 새로운 기술이 아니라 존재하는 기술을 잘 포장함

      2.1.1. Container

      2.1.2. Overlay Network

      2.1.3. Union FileSystem

     2.2. 사용하고 쉽고 User들이 원하는 기능을 간단하지만 획기적으로 구현

     2.3. 가볍고 빠르다.

     2.4. Docker Image로 만든 Container는 Docker가 설치된 환경이라면 어디서든 똑같이 동작한다.

      2.4.1. 개발환경과 Production 환경이 같다면? 배포 지옥은 사라진다!

    Container 기술 연보

    3. Layer 저장방식

     3.1. 최초의 Docker Image는 Container를 실행하기 위한 모든 정보를 포함하기 때문에 용량이 수백MBtye에 달한다.

      3.1.1. 처음 Imgae 다운시 부담이 없음. 허나 기본 Image에 파일 하나를 추가한 후 수백MB를 다시 다운받아야 한다면?

     3.2. Union FileSystem 

      3.2.1. Layer 개념을 사용

      3.2.2. 여러개의 Layer를 하나의 FileSystem으로 사용

     3.3. Image는 여러개의 읽기전용 Layer로 구성

      3.3.1. 파일이 추가되거나 수정되면 새로운 Layer 생성

     3.4. Ubuntu Image 예

      3.4.1. 기본 ubuntu image는 A+B+C

      3.4.2. Nginx를 설치하면 A+B+C+Nginx

      3.4.3. 여기에 web app를 생성하면 A+B+C+Nginx+Source(web app)

      3.4.4. Source를 수정하면 A+B+C+Nginx+Source2(web app)가 됨.

    Docker Layer

    4. Image 경로

     4.1. tag를 이용하여 Image를 URL 방식으로 관리

     4.2. ubuntu 14.04 Image는 docker.io/library/ubuntu14.04 or docker.io/library/ubuntu:trustry

     4.3. docker.io/library는 생략 가능

     4.4. ubuntu:14.04

    Docker Image 경로 tag

    오늘은 Docker Image에 대해서 정리해 보았습니다.

    내일은 여러가지 Docker Component에 대해서 살펴보도록 하겠습니다.

    Have a nice day!

    728x90

    '공부합시다! > Container' 카테고리의 다른 글

    Docker - Data Management  (0) 2022.03.08
    Docker 개요 - 3  (0) 2022.03.02
    Docker(Container) 기술 : namespace & cgroups  (0) 2022.02.28
    Docker 개요 - 2  (0) 2022.02.27
    Docker 개요 -1  (0) 2022.02.25
Designed by Tistory.