반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- swift 클로저
- 프로세스
- 도커 컨테이너
- Swift
- os
- kubernetes
- 쿠버네티스
- NGINX
- centOS
- AWS
- 도커 명령어
- 리눅스
- docker
- 운영체제
- 도커 이미지
- devops
- 도커
- Python
- linux
- 부스트코스
- 컨테이너
- k8s
- 인프라
- C++
- boj
- centOS7
- 클라우드
- 네트워크
- ios
- 데브옵스
Archives
- Today
- Total
귀염둥이의 메모
[Docker] 도커 이미지 조작 명령어 (search, pull, push, rm, prune ...) 본문
Infra & Devops/Docker
[Docker] 도커 이미지 조작 명령어 (search, pull, push, rm, prune ...)
겸둥이xz 2021. 9. 15. 21:26반응형
- Docker 이미지를 레지스트리에서 다운로드/업로드
- Docker 컨테이너의 시작/정지
- 모든 조작은 Docker 명령으로 수행한다
이미지 검색 (docker search)
docker search [옵션] <검색 키워드>
옵션 | 설명 |
--no-trunc | 결과를 모두 표시 |
--limit | n건의 검색 결과를 표시 |
--filter=stars=n | star의 수(n 이상)를 지정 |
- NAME : 이미지 이름
- DESCRIPTION : 이미지 설명
- STARS : 즐겨찾기 수
- OFFICIAL : 공식 이미지인지?
- AUTOMATED : Dockerfile을 바탕으로 자동 생성된 이미지인지?
Docker Hub에는 사용자가 작성한 임의의 이미지를 공개할 수 있다.
그래서 Docker 이미지의 이름을 고유하게 하기 위해 '사용자명/이미지명' 형식으로 이름을 붙인다.
사용자명을 갖지 않는 이미지도 존재한다. 이러한 것은 Docker의 공식 이미지를 나타낸다.
이미지 다운로드 (docker image pull) / 이미지 목록 보기 (docker image ls)
docker image pull [옵션] 이미지명[:태그명]
- docker pull centos : centos 최신판(latest) 획득 (태그명을 생략하면 latest가 기본값, image 생략 가능)
- docker image pull -a centos : CentOS의 모든 태그 획득
- docker image pull gcr.io.tensorflow/tensorflow : Tensorflow의 URL을 지정하여 이미지 취득
- docker image ls
- --all, -a : 모든 이미지 표시
- --digests : 다이제스트 표시 (이미지를 고유하게 식별하기 위한)
- --no-trunc : 결과를 모두 표시
- --quiet, -q : 이미지 ID만 표시
이미지 상세 정보 확인 (docker image inspect)
docker image inspect [이미지]
- 결과는 JSON 형식으로 표시된다.
- 이미지 ID, 작성일, Docker 버전, CPU 아키텍처, 환경 변수 등을 확인할 수 있다.
특정 값을 취득하고 싶을 때 (--format 옵션)
이미지 태그 설정 (docker image tag)
- 태그에는 식별하기 쉬운 버전명을 붙이는 것이 일반적이다.
- Docker Hub에 작성한 이미지를 등록하려면 다음과 같은 규칙으로 이미지에 사용자명을 붙여야 한다.
docker tag <소스 이미지> <docker hub 사용자명>/이미지명:[태그명]
- 태그를 붙인 이미지(abcde:fghi)와 소스 이미지(ubuntu)의 'IMAGE ID'가 똑같다.
- 이 둘은 실체가 똑같다는 것을 의미한다.
- 즉, 이미지에 별명을 붙일 뿐 이미지 자체를 복사하거나 이름을 바꾼 것이 아니다.
- 리눅스 하드 링크와 비슷한 개념
Docker Hub에 이미지를 등록할 때 규칙
Docker Hub에 로그인 (docker login)
docker login [옵션] [서버]
- Docker 리포지토리에 업로드를 하려면 Docker Hub 가입과 로그인이 필요하다.
- --password, -p : 비밀번호
- --username, -u : 사용자명
이미지 업로드 (docker image push)
docker image push <Docker Hub 사용자>/이미지명[:태그명]
이미지 삭제 (docker rm)
docker image rm [옵션] 이미지명 [이미지명]
- --force, -f : 이미지를 강제로 삭제
- --no-prune : 중간 이미지를 삭제하지 않음
- 이미지명은 REPOSITORY 또는 IMAGE ID를 지정한다.
- Untagged : 하드 링크처럼 같은 링크의 이미지 파일이 있는데, 그 이름만 제거
- Deleted : 하드링크 1인 이미지, 할당 해제
사용하지 않은 이미지 삭제 (docker image prune)
- --all, -a : 사용하지 않은 이미지 모두 삭제
- --force, -f : 강제 삭제
docker logout (Docker Hub 로그아웃 명령어)
<참고자료>
'완벽한 IT 인프라 구축을 위한 Docker 2판'
반응형
'Infra & Devops > Docker' 카테고리의 다른 글
[Docker] 도커 컨테이너 Network (bridge, host, none, macvlan) / 네트워크 연결 (connect, disconnect) (1) | 2021.09.16 |
---|---|
[Docker] 도커 컨테이너 명령어(create, start, stop, rm, run, cp) (1) | 2021.09.15 |
[Docker] Nginx 실행하기 (0) | 2021.09.15 |
[Docker] Docker 설치, hello-world (CentOS 7 환경) (0) | 2021.09.15 |
[Docker] 네트워크 구성, NAT vs NAPT (0) | 2021.09.14 |
Comments