ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Docker] image란?
    오늘의 IT/Docker 2023. 1. 28. 22:54
    반응형

     

    Docker 에서 image란?

    운영에 필요한 서버, 코드, 라이브러리, 컴파일된 실행 파일을 묶는 형태로써

    container 실행에 필요한 파일과 설정값의 모음집이라고 할 수 있음

    지난 포스팅에서 다운 받은 imageUbuntu 이미지로 Ubuntu를 실행하기 위한 모든 파일을 가지고 있음

    image 확인하기

    docker images

     

    image 검색하기

    docker search [image]
    # 예를 들면
    docker search nginx
    docker search nginx -f stars=7

     

    official은 해당 제조사가 만든 공식 image이며 나머지는 다른 유저가 만들어 놓은 image

    보통 official을 많이 쓰며 stars는 유저들 즐겨찾기 수이니 참고하여 사용하면 좋을듯

    docker search nginx 예시

     

    image 다운받기

    docker image pull

     

    image 생성하기

    docker container commit
    docker container commit -m "Message" [containerFrom] [REPO/IMG:TAG]

    옵션

    --author, -a : 작성자 
    --message, -m : 메시지

     

    image 삭제하기

    docker image rm [image]

    옵션

    —force, -f #이미지 강제 삭제
    -no-prune #중간 이미지를 삭제하지 않음

     

    image 상세출력

    docker image inspect [image]

     

    image 태그 달기

    동일한 이미지라도 구분하고 싶을때 태그를 사용함 이미지 자체는 변경하지 않고 태그만 다르게 해서 사용 가능

    docker image tag [image] [레포지토리]:[태그](보통 버전으로 많이 사용)

     

    docker가 제공하고 있는 image 저장소

    https://hub.docker.com/

     

    Docker Hub Container Image Library | App Containerization

    Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.

    hub.docker.com

    해당 사이트를 통해 공유된 image를 받을 수도 있고 image 에 대한 버전 관리 및 배포가 가능함

     

    image 특징

    • image는 단독으로 실행 될 수 없고 container 안에서만 실행 가능
    • image를 사용하는 container가 존재하면 image 삭제가 안됨. image 사용하는 container를 삭제한 후에 image를 삭제해야됨
    • 하나의 image는 여러 container를 생성할 수 있고, container가 삭제되더라도 image는 변하지 않고 그대로 남아 있음
    • Dockerfile이라는 파일로 image를 만듬. [Dockerfile은 소스와 함께 의존성 패키지 등 사용했던 설정 파일을 버전 관리하기 쉽도록 명시함]
    • image 는 상태 값을 가지지 않고 변하지 않음
    • 다양한 API가 제공되어 원하는 만큼 자동화가 가능
    • 가상 머신에 비해 적은 용량 

     

    Dockerfile 문법 정리

    명령어 설명 명령어 설명
    FROM 베이스 이미지 지정 VOLUME 볼륨 마운트
    RUN 명령 실행 USER 사용자 지정
    CMD 컨테이너 실행 명령 WORKDIR 작업 디렉토리
    LABEL 라벨 설정 ARG Dockerfile 안의 변수
    EXPOSE 포트 노출 ONBUILD 빌드 완료 후 실행되는 명령
    ENV 환경 변수 STOPSIGNAL 종료 시그널 설정
    ADD 파일/디렉토리 추가 HEALTHCHECK 컨테이너의 상태 체크
    COPY 파일 복사 SHELL 기본 쉘 설정
    ENTRYPOINT 컨테이너 실행 명령    

     

     

     

    참조 : https://tech.cloudmt.co.kr/2022/06/29/%EB%8F%84%EC%BB%A4%EC%99%80-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88%EC%9D%98-%EC%9D%B4%ED%95%B4-3-3-docker-image-dockerfile-docker-compose/

    반응형
Designed by Tistory.