05-Docker 창고

3992 단어 dockerhpccluster

Docker 저장소 액세스


창고(Repository)는 거울을 집중적으로 보관하는 곳으로 창고와 개인 창고로 나뉜다.등록 서버와 창고는 차이가 있다. 등록 서버는 창고를 저장하는 구체적인 서버로 하나의 등록 서버는 여러 개의 창고를 가질 수 있고 모든 창고 아래에는 여러 개의 거울이 있을 수 있다. 창고는 구체적인 프로젝트나 디렉터리로 여겨질 수 있다. 예를 들어private-docker.com/ubuntu private-docker.com은 등록 서버 주소이고 ubuntu는 창고 이름입니다.

공공 거울 시장


Docker Hub 는 Docker 공식 에서 제공하는 최대 공용 미러 웨어하우스로, 웹 사이트 주소https://hub.docker.com대부분의 거울의 수요는 Dockerhub에서 직접 다운로드하여 로그인할 수 있으며, 명령을 통해 dockerlogin 명령을 실행하여 사용자 이름, 비밀번호, 메일을 입력하여 등록과 로그인을 완성할 수 있으며, 등록이 성공하면 로컬 사용자 디렉터리에서 자동으로 옷을 입는다.docker/config.json 파일, 사용자의 인증 정보를 저장합니다.2. 기본 조작은 사용자가 로그인하지 않아도 Docker 검색 명령을 통해 공식 창고의 거울을 찾을 수 있고 Docker [image]pull 명령을 이용하여 그를 로컬로 다운로드할 수 있다.3. 자동 생성은dockerhub가 제공하는 자동화 서비스로 프로젝트 코드 업데이트에 따라 자동으로 이미지를 재구성할 수 있습니다.적용 미러가 생성된 경우 새 버전을 게시할 때 수동으로 미러와 새 미러가 필요합니다.자동 창설은 사용자가dockerhub를 통해 목표 사이트의 프로젝트를 지정하고 프로젝트가 바뀌면 자동으로 창설을 실행할 수 있다.1) 로그인 Docker Hub 만들기 2) 대상 웹 사이트에서 Docker Hub 액세스 서비스 허용 3) Docker Hub에서 자동 생성 유형을 설정하는 항목 4) 대상 웹 사이트의 항목과 지점 5) Dockerfile의 위치를 지정하고 생성을 제출합니다.

현지의 사유 창고를 세우다


registry를 사용하여 개인 이미지를 만들고 시작합니다.창고는 용기의/var/lib/registry 디렉터리에 생성되며, - v 파라미터를 사용하여 거울 파일을 지정한 디렉터리 (로컬/opt/data/registry) 에 저장합니다
[root@docker01 ~]# docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry:2
Unable to find image 'registry:2' locally
2: Pulling from library/registry
486039affc0a: Pull complete 
ba51a3b098e6: Pull complete 
8bb4c43d6c8e: Pull complete 
6f5f453e5f2d: Pull complete 
42bc10b72f42: Pull complete 
Digest: sha256:7d081088e4bfd632a88e3f3bcd9e007ef44a796fddfe3261407a3f9f04abe1e7
Status: Downloaded newer image for registry:2
7166c8c34d7ff45d5e9200909ea17cebfd3894852cf1f49ee9e944ea1218fd9a

기존 미러를 보고 태그를 사용하여 미러 태그를 10.10.17.199:5000/test로 수정합니다.
[root@docker01 ~]# docker images
REPOSITORY               TAG                 IMAGE ID            CREATED             SIZE
ubuntu                   18.04               72300a873c2c        2 weeks ago         64.2MB
[root@docker01 ~]# docker tag ubuntu:18.04 10.10.17.199:5000/test

태그 미러를 직접 업로드하면 오류가 발생합니다.
[root@docker01 ~]# docker push 10.10.17.199:5000/test
The push refers to repository [10.10.17.199:5000/test]
Get https://10.10.17.199:5000/v2/: http: server gave HTTP response to HTTPS client

데몬을 수정합니다.json 파일, docker 다시 불러오기, 레지스트리 시작
[root@docker01 ~]# vim /etc/docker/daemon.json
{ "insecure-registries":["10.10.17.199:5000"] 
[root@docker01 ~]# systemctl daemon-reload 
[root@docker01 ~]# systemctl restart docker
[root@docker01 ~]# docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry:2
b3e4503d76bf818f4d4a8cbb399f2826c335a97d5bae6b21d66d671c4983d99f

태그 미러 업로드
[root@docker01 ~]# docker push 10.10.17.199:5000/test
The push refers to repository [10.10.17.199:5000/test]
1852b2300972: Pushed 
03c9b9f537a4: Pushed 
8c98131d2d1d: Pushed 
cc4590d6a718: Pushed 
latest: digest: sha256:0925d086715714114c1988f7c947db94064fd385e171a63c07730f1fa014e6f9 size: 1152

테스트, 기존 10.10.17.199:5000/test 삭제하고 pull 하나 더 내리기
[root@docker01 ~]# docker rmi 10.10.17.199:5000/test
Untagged: 10.10.17.199:5000/test:latest
Untagged: 10.10.17.199:5000/test@sha256:0925d086715714114c1988f7c947db94064fd385e171a63c07730f1fa014e6f9
[root@docker01 ~]# docker pull 10.10.17.199:5000/test
Using default tag: latest
latest: Pulling from test
Digest: sha256:0925d086715714114c1988f7c947db94064fd385e171a63c07730f1fa014e6f9
Status: Downloaded newer image for 10.10.17.199:5000/test:latest
10.10.17.199:5000/test:latest
[root@docker01 ~]# docker images
REPOSITORY               TAG                 IMAGE ID            CREATED             SIZE
10.10.17.199:5000/test   latest              72300a873c2c        2 weeks ago         64.2MB
ubuntu                   18.04               72300a873c2c        2 weeks ago         64.2MB

좋은 웹페이지 즐겨찾기