Docker 대부분과 저장소의 차이점
도커 만과 리포지토리의 차이점에 혼란 스럽습니다. Docker 문서는 두 단어를 상호 교환 적으로 사용하는 것처럼 보입니다. 또한 리포지토리는 문서에서 다음과 같은 이미지라고도합니다.
저장소를 선택하여 선택하거나 컨테이너를 이름 지정 이미지로 커밋해야합니다.
이제이 저장소를 이름 또는 태그로 푸시로 푸시 할 수 있습니다.
저장소를 푸시에 어떻게 푸시 할 수 있습니까? 이미지를 저장소로 푸시하지 꼭보입니까?
도커는 도커 이미지를 저장하는 서비스입니다.
Docker Registry는 다음과 같이 공개 또는 개인 소유로 호스팅 할 수 있습니다.
- 도커 허브 ,
- 키 ,
- Google 컨테이너 ,
- AWS 컨테이너 포장
또는 도커를 직접 호스팅 할 수 있습니다
( 자세한 내용 은 https://docs.docker.com/docker-trusted-registry/ 참조).
Docker 저장소는 이름이 같고 태그가 다른 여러 Docker 이미지 모음입니다. 태그는 리포지토리 내 이미지의 영숫자 식별자입니다.
예를 들어 https://hub.docker.com/r/library/python/tags/ 를 참조 하십시오 . 공식 고유 이미지에는 여러 가지 태그가 있습니다.이 태그는 모두 Docker Hub에있는 공식 저장소의 멤버입니다. Docker Hub는 Docker가 호스팅하는 Docker Registry입니다.
더 많은 것을 존재한다는 것 :
Docker 사용, 컨테이너를 사용하여 소프트웨어 개발 및 배포 책에서
게재, 리포지토리, 이미지 및 태그
이미지를 저장하기위한 계층 적 시스템이 있습니다. 다음과 같은 용어가 사용됩니다.
기재
이미지 호스팅 및 배포를 담당하는 서비스입니다. 기본 보관는 Docker Hub입니다.
저장소
관련 이미지 모음 (일반적으로 동일한 응용 프로그램 또는 서비스의 다른 버전을 제공)
꼬리표
저장소 내의 이미지에 추측 영숫자 식별자 (예 : 14.04 또는 안정).
따라서 명령 docker pull amouat/revealjs:latest
은 amouat/revealjs
Docker Hub 표준에서 저장소 내에서 최신 태그가 지정된 이미지를 다운로드합니다 .
정보 보완 :
- 일반적으로 저장소를 (및 그 일부인 모든 이미지) 푸시합니다. 그러나 단일 이미지를 푸시 할 수 있습니다. 모든 경우에 사용
docker push
합니다. - 이미지는 12 자리 숫자 이미지 ID를 갖지만 다음과 같이 이미지됩니다.
namespace/repo-name:tag
- 이미지 전체 이름은 호스트 이름 및 포트로 선택적으로 접 두부로 있습니다.
myregistryhost:5000/namespace/repo-name:tag
- 일반적인 이름으로 명명 된 명명 규칙은 스페이스 사용자 이름을 "네임 스페이스"입니다.
고정 표시기 저장소의 귀여운 조합 registry
및 image
.
docker tag foo <registry>/<image>:<tag>
와 같다
docker tag foo <repository>:<tag>
Docker Registry는 직접 호스팅하거나 (신뢰할 수있는 개인용) Docker 허브를이 서비스의 호스트로 제출 수있는 서비스입니다. 일반적으로 소프트웨어가 상용 인 경우는 "개인 및 호스팅이 가능"합니다. Java 개발자의 경우 이는 Maven Artifactory 설정과 다소 유사합니다.
Docker Repository는 "태그 된"이미지 세트입니다. 예를 들어 5 개의 ubuntu:latest
이미지를 태그했을 수 있습니다 .
a) 나노 편집기 (image1_tag : v1)
b) 특정 소프트웨어 1 (image1_tag : v2)
c) Sudo (image1_tag : v3)
d) 아파치 http 데몬 (image1_tag : v4)
e) 바람둥이 (image1_tag : v5)
docker push
명령을 사용 하여 위의 각 이미지를 리포지토리에 푸시 할 수 있습니다 . 리포지토리 이름이 일치하는 한에서 푸시되고 선택한 리포지토리 아래에 태그가 표시됩니다.
이제 귀하의 질문은 "이 저장소는 어디에서 호스팅되고 / 누가 서비스를 관리하고 있습니까?"입니다. Docker Registry가 등장합니다. 기본적으로 개인 / 공용 저장소를 유지하는 데 사용할 수있는 도커 허브 (오픈 소스)가 제공됩니다. 따라서 수정하지 않는 이미지가 docker hub의 개인 저장소로 푸시됩니다. 이미지 태그를 푸시 할 때의 출력 예는 다음과 같습니다.
docker@my-docker-vm:/$ docker push mydockerhub/my-helloworld-repo:my_tag
The push refers to repository [docker.io/mydockerhub/my-helloworld-repo]
bf41e934d39d: Pushed
70d93396f87f: Pushed
6ec525dfd060: Pushed
705419d10b13: Pushed
a4aaef726d02: Pushed
04964fddc946: Pushed
latest: digest: sha256:eb93c92351bce785aa3ec0de489cfeeaafd55b7d90adf95ecea02629b376e577 size: 1571
docker@my-docker-vm:/$
그리고 즉시 입력 docker images --digests -a
하면 푸시 된 이미지 태그가 이제 도커 허브 완성으로 서명 관리되는 개인 저장소에 대해 새를 표시하는지 확인할 수 있습니다.
Docker Hub 및 기타 보관 저장소 호스팅 서비스를 "코드 리"라고합니다. 보관는 리포지토리 모음을 저장합니다.
레지스트리는 많은 저장소를 가질 수 있고 저장소는 태그로 개별적으로 버전이 지정된 동일한 이미지의 여러 버전을 가질 수 있습니다.
참고 URL : https://stackoverflow.com/questions/34004076/difference-between-docker-registry-and-repository
'IT' 카테고리의 다른 글
Chrome 개발자 도구에서 자동 확장하는 방법이 있습니까? (0) | 2020.07.16 |
---|---|
AngularJs“컨트롤러”구문-설명? (0) | 2020.07.16 |
PHP 세션은 어떻게 작동합니까? (0) | 2020.07.16 |
경고 응답 본문의 내용 길이가 없습니다. (0) | 2020.07.16 |
ERROR의 원인 : 참조 된 테이블에 대해 주어진 키와 일치하는 고유 제한 조건이 없습니까? (0) | 2020.07.16 |