티스토리 뷰
728x90
반응형
docker pull 명령어는 Docker 이미지를 Docker Hub(또는 다른 레지스트리)에서 로컬 환경으로 다운로드하는 데 사용됩니다. 이 명령어는 Docker 이미지를 컨테이너로 실행하기 전에 필요한 이미지 파일을 미리 가져오는 과정입니다.
docker pull 명령어의 기본 구조
docker pull [OPTIONS] IMAGE[:TAG|@DIGEST]
- IMAGE: 다운로드할 이미지의 이름(예: nginx, ubuntu, mysql).
- TAG(선택 사항): 특정 버전을 지정합니다(예: nginx:latest, nginx:1.21).
- 생략하면 기본값인 latest 태그를 다운로드합니다.
- DIGEST(선택 사항): 이미지의 고유 식별자를 사용해 다운로드합니다.
docker pull 예제와 설명
1. 최신 버전 다운로드
docker pull nginx
- nginx:latest 이미지를 다운로드합니다.
- latest는 기본 태그로, 최신 버전을 의미합니다.
2. 특정 버전 다운로드
docker pull nginx:1.21
- Nginx의 1.21 버전을 다운로드합니다.
- 버전을 지정하면 원하는 안정된 버전을 사용할 수 있습니다.
3. 특정 레지스트리에서 이미지 다운로드
docker pull myregistry.example.com/myimage:1.0
- myregistry.example.com이라는 사용자 정의 레지스트리에서 myimage의 1.0 버전을 다운로드합니다.
- Docker Hub 외의 레지스트리를 사용할 때는 반드시 레지스트리 URL을 명시해야 합니다.
4. 이미지 Digest로 다운로드
docker pull nginx@sha256:abc123...
- sha256 Digest 값을 통해 특정 이미지를 다운로드합니다.
- Digest는 이미지의 고유 식별자로, 완전히 동일한 이미지를 가져올 때 사용됩니다.
docker pull 동작 과정
- 이미지 레지스트리와 연결:
Docker는 기본적으로 Docker Hub에 연결해 이미지를 검색합니다. - 이미지 존재 확인:
지정한 이미지와 태그 또는 Digest가 레지스트리에 있는지 확인합니다. - 이미지 레이어 다운로드:
이미지는 여러 레이어로 구성되며, 변경된 레이어만 다운로드합니다. - 이미지 저장:
다운로드된 이미지는 로컬 Docker 이미지 저장소에 저장됩니다.
유용한 옵션
1. --all-tags
모든 태그를 다운로드합니다.
docker pull --all-tags nginx
- nginx의 모든 버전 이미지를 가져옵니다.
2. --platform
특정 플랫폼(예: linux/amd64, linux/arm64)의 이미지를 다운로드합니다.
docker pull --platform=linux/amd64 nginx
- AMD64 아키텍처용 이미지를 가져옵니다.
자주 묻는 질문
Q1: 이미 다운로드한 이미지를 다시 docker pull 하면 어떻게 되나요?
- Docker는 로컬에 동일한 이미지가 있는지 확인합니다.
- 로컬에 동일한 이미지가 있으면 다시 다운로드하지 않습니다.
Q2: latest 태그는 항상 최신 버전인가요?
- latest는 최신 버전을 의미하지만, 최신 버전으로 설정되지 않을 수도 있습니다.
- 항상 명시적인 태그(nginx:1.21)를 사용하는 것이 좋습니다.
Q3: 다운로드한 이미지는 어디에 저장되나요?
- Docker는 로컬 시스템에 이미지를 저장합니다.
이미지를 확인하려면 다음 명령어를 사용하세요:
docker images
728x90
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- In App Purchase
- java 키워드 정리
- 스프링 프레임워크(spring framewordk)
- docker
- REST API
- 스프링 시큐리티(spring security)
- system.io
- 제품 등록
- 문자 자르기
- .submit()
- await
- 특정 문자를 기준으로 자르기
- React
- System.Diagnostics
- MainActor
- 람다식(lambda expression)
- 스프링 시큐리티(spring security)-http basic 인증
- java web-mvc
- java-개발 환경 설정하기
- 인텔리제이(intellij)
- 표현 언어(expression language)
- 메이븐(maven)
- java.sql
- 스프링 프레임워크(spring framework)
- jstl(java standard tag library)
- jstl(java standard tag library)-core
- nl2br
- 진수 변환
- jsp 오픈 소스
- error-java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함