본문 바로가기
개발/인프라

docker - 이미지를 다루는 다양한 옵션

by 컴쏘 2023. 6. 4.

docker image 주요 명령

docker image 관련 명령

  1. docker 설치
  2. docker image 다운로드
  3. 다운로드 받은 image로 docker container 생성 및 실행

모든 docker 명령CLI(Command Line Interface)키보드로 직접 명령을 작성하는 형태로 수행

docker 명령 옵션 선택자(이미지ID/컨테이너 등)
  • docker는 image와 container 명령이 각각 별도로 존재
  • 다음과 같이 image를 다루는지, container를 다루는지를 명시적으로 이해하기 위해, docker 다음에 image 또는 container를 기재해줌
    • 명령어는 어차피 다르므로(image에서 사용하는 명령어와 container에서 사용하는 명령어가 다름), 굳이 image 또는 container를 붙이지 않아도 되지만, 최근에는 해당 키워드를 붙여주는 경향이 있음
docker image 명령 옵션 ...
docker container 명령 옵션 ... 

1. 이미지 다운로드 받기 위한 Docker Hub 가입

  • docker 이미지를 직접 작성해서 사용할 수 있음
  • 파이썬/javascript 라이브러리처럼 손쉽게 미리 작성해놓은 docker 이미지를 다운로드 받을 수 있음
    • 이를 위해 docker에서는 docker hub시스템(서비스)를 제공
  • docker의 특정 명령어를 사용해서 로그인 상태가 되어야 docker hub의 공식적인 이미지를 사용할 수 있음
    • 여기서 공식적인 이미지란, 예를 들어 우분투 공식적인 패키지 같은 것들…

+) Docker Hub 로그인 방법

방법 1. 맥이나 윈도우의 각 Docker for Mac, Docker for Windows에서는 로그인할 수 있는 별도 UI를 제공

방법 2. command line 명령

docker login 

docker login 후 Username과 Password를 명확히 넣으면 로그인 가능 (한번 로그인하면 계속 로그인 상태가 된다.)

 

docker hub에서 logout (잘 사용하지 않는 명령어)

docker logout 

2. 다운로드 받을 이미지 검색

docker search [이미지 명:태그]

ex. docker search ubuntu

예시로 든 docker search ubuntu를 하였을 때, 다양한 이미지 리시트가 나온다.

여기서 ubuntu라고 프로그램명만 있는 것이 공식 이미지 (더 확실한 방법으로는 OFFICIAL 항목이 [OK] 인 것을 확인)

결과 예시 (강의 내용 캡쳐)

NAME : 이미지 이름

DESCRIPTION : 이미지 설명

STARS : 별점

OFFICIAL : 공식 이미지 여부

 

+) 공식 이미지가 아닌 것 중에서 만든 사용자의 이름을 확인할 수 있는 방법이 있다.

ex. sososo/ubuntu 처럼 /가 있으면 /앞의 sososo가 Docker Hub의 사용자 명이고, /뒤에 있는 이미지를 만든 것이라고 생각하면 된다.

 

  • 태그에는 보통 버전 정보를 넣는 경우가 많다. (만약 태그를 넣지 않으면, 최신 버전 이미지를 의미, 가장 최신 버전 이미지의 태그는 안 붙여도 되지만 만일 태그를 붙이고 싶다면 latest를 붙인다.)
    • 특정 이미지의 태그 리스트를 볼 수 있는 명령어는 없다.
    • 대신, docker hub 사이트 상에서 확인 가능
  • 너무 많은 이미지의 결과가 나온다 limit 옵션을 넣어주면 된다.
docker search --limit=5 ubuntu 

3. 이미지 다운로드

태그를 안 붙이면, latest(가장 최신 버전) 다운

docker pull [이미지명]

ex. docker pull ubuntu

+) docker pull 명령은 image 관련 명령어이므로, docker image pull [이미지명] 명령어 사용 가능

 

이미지 명 뒤에 태그를 명시하면, 특정 태그에 해당하는 버전을 다운 받을 수 있다.

docker pull [이미지명:태그]

ex. docker pull ubuntu:20.10

4. 다운로드 받은 이미지 목록 확인

docker imagesdocker images ls 명령어 2개가 있다.

docker images , docker images ls 둘 다 동일한 결과가 나온다.

결과 예시 (강의 화면 캡쳐)

+) 다운로드 받은 이미지 아이디만 추출 (다른 명령과 조합해서 많이 사용)

docker image ls -q

5. 다운로드 받은 이미지 삭제하기

docker rmidocker image rm 명령어 2개가 있음

docker rmi , docker image rm 동일한 결과가 나온다.

docker rmi 이미지ID(또는 이미지 레포지토리 이름)
docker image rm 이미지ID(또는 이미지 레포지토리 이름) 

이미지 및 컨테이너를 모두 삭제하는 명령은 컨테이너 명령을 익힌 후, 별도로 다루기


본 글은 인프런 강의 "풀스택을 위한 도커와 최신 서버 기술"에 대해 공부하여 정리한 글입니다.
[강의 링크] : https://www.inflearn.com/course/%EC%84%9C%EB%B2%84%EA%B8%B0%EC%88%A0-%ED%92%80%EC%8A%A4%ED%83%9D-3/dashboard