레지스트리에 I,
공식 도커 허브는 공공 이미지 관리를 위해, 우리는 우리가 그것을 원하는 이미지, 당신은 또한 우리의 자신의 이미지를 푸시 할 수 있습니다 찾을 수있는 좋은 장소입니다.
하지만 가끔은 우리가 시나리오를 사용하여 우리는 우리 자신의 이미지를 관리하기위한 개인 창고 거울이 필요합니다. 이 목적은 오픈 소스 소프트웨어 레지스트리에 의해 달성 될 수있다.
예전의 코드베이스와 새로운 코드베이스 : 레지스트리 GitHub의에 두 개의 코드가 있습니다. 파이썬을 사용하여 작성 오래된 코드는 다음 0.9.1 버전에서 개발을 계속 더 이상 사용되지 않는 것으로 표시됩니다, 풀 푸시 성능 문제가 없다.
그것은, 새로운 코드베이스가 이동을 사용하여 작성 새 버전 2.0 코드베이스 개발의 시작부터가 될 것입니다, 수정 이미지 ID 생성 알고리즘 크게 끌어와 푸시 미러링의 효율을 향상 미러 구조에 저장된 레지스트리.
도커 허브의 이미지의 공식 레지스트리, 우리는 바로 우리 자신의 개인 창고를 구축, 거울 컨테이너를 구축하기 위해 레지스트리를 사용할 수 있습니다.
둘째, 빌드 레지스트리
첫째, 검색하고 거울을 당겨
레지스트리 도커 검색 당신은 어쩌면 언젠가는 더 나은 이미지를 가지고 관련 거울을 볼 수 있습니다, # 당신이 검색하는 것이 좋습니다 도커 풀 레지스트리 #의 현재 최신 V2이기 때문에, 추가 할 수 없습니다 라벨을
레지스트리 컨테이너를 실행
RUN은 도커 \ -d #의 백그라운드에서 실행이 레지스트리-SRV \ --name # 지정된 컨테이너 이름 --restart = 항상 \ #를 자동으로 시작하도록 설정을 5000 \ -p 5000 # 포트 매핑 호스트, 호스트 주소에 의해 액세스 -v / 옵션을 / ZWX - 레지스트리의 경우 : / var / lib 디렉토리 / 레지스트리 \ # 로컬 저장소 디렉토리 미러 마운트, 쉬운 관리 및 지속성 -v /opt/zwx-registry/srv-config.yml:/etc/docker/registry/config .yml \ # 쉽게 수정하고 저장하는 로컬로 구성 파일을 마운트 레지스트리
SRV-config.yml 다음
참으로 빨간색 삭제 매개 변수 세트를 표시, 창고가 삭제 기능을 지원 할 수 있도록하는 것입니다. 미러 이미지가 삭제 된 창고가 될 수 없다이 기본 매개 변수없이.
버전 : 0.1 로그 : 필드 : 서비스 : 레지스트리 저장 : 삭제 : 사용 가능 : 진정한 캐시 : blobdescriptor : inmemory 파일 시스템 : rootdirectory : 은 / var / lib 디렉토리 / 레지스트리 HTTP : 주소 : : 5000 헤더 : X -Content - 형 - 옵션 : [NOSNIFF ] 건강 : storagedriver : 사용 가능 : 사실 간격 : 10 초에 임계 값 : 3
등록 HTTPS 프로토콜 (그렇지 않으면 안전 인증에 세게 밀어)
로컬 저장소 다운로드 이미지에 필요한 모든 당신은 구성해야
/etc/docker/daemon.json 정력 # 기본값은 추가로 다음이, 자신의 추가 그러한 파일이 없습니다. { " 에서 안전하지 않은-등록 기관 " : [ " xx.xx.xx.xx : 5000 " ]} # 지정한 IP 주소 또는 도메인 이름
systemctl 데몬 -reload # 데몬을 다시 시작 systemctl 고정 표시기를 다시 시작 # 재시작 서비스 고정 표시기
미러 업로드 및 다운로드
5000 / nginx를 : 푸시가 도커 xx.xx.xx.xx #이 그렇지 않으면 오류가 발생하지, 창고의 주소를 표시해야합니다 고정 표시기의 풀 xx.xx.xx.xx를 : 5000 / nginx를
보기 미러 정보 창고
-XGET HTTP 컬 : //xx.xx.xx.xx : 5000 / V2 / _catalog #보기 창고 미러 목록 (윈도우 브라우저를 통해 볼도 개방) 컬 -XGET HTTP : //xx.xx.xx.xx : 5000 / V2 / 여기서 image_name / 태그 / 목록 #보기 응용 프로그램 이미지 태그 지정
셋째, 빌드 레지스트리 웹
첫째, 검색하고 거울을 당겨
검색-registry- 도커 도커 웹 도커 풀 하이퍼 / 도커 - 레지스트리 웹 - # 더 많은 사람들이 이미지
레지스트리 웹 컨테이너를 실행
RUN은 도커 \ -d #의 배경에 실행 --name-레지스트리 웹 \ # 지정된 컨테이너 이름 --restart = 항상 \ #를 자동으로 시작하도록 설정 8080 \ 8000 -p # 포트 매핑 호스트, 호스트 주소에 의해 액세스 -v / 옵션을 /zwx-registry/web-config.yml:/etc/config.yml \ # 쉽게 수정하고 저장하는 로컬로 구성 파일을 마운트 하이퍼 / 고정 표시기 - 레지스트리 웹
다음과 같이 웹 config.yml 문서 읽기
빨간색 표시된 버튼을 삭제할 수 있습니다 웹 페이지 위해 false로 읽기 전용 매개 변수 세트를. 기본값은 사실, 읽기 전용, 아무 삭제 버튼 만 볼 수 있습니다.
레지스트리 : # 도커 레지스트리 URL URL : http://10.88.77.32:5000/ V2 # 도커 레지스트리 FQDN 이름 : 로컬 호스트 : 5000 #이 거짓이어야 이미지를 삭제할 수 있도록하려면 읽기 전용 : 거짓 인증 : # 안 인증이 사용 가능 : 거짓
배포가 완료되면, 모든 응용 프로그램 이미지를 해결하기 위해 볼 수있는 저장소 브라우저 UI를 엽니 다
각 태그는 삭제 버튼 (안 기본 구성 참조 config.yml)가 뒤에, 모든 거울의 태그 정보를 볼 수있는 응용 프로그램의 이미지 갤러리를 선택
넷째, 빠른 전개
클러스터 모드는 빠르게 고정 표시기 스택에 의해 레지스트리 및 레지스트리 웹을 배포 할 수 있습니다.
새로운 프로필 SRV-config.yml, 지정된 경로로 웹 config.yml는 다음 새 고정 표시기-compose.yml 파일은 명령을 실행합니다.
고정 표시기 스택 배포 -c 고정 표시기 - compose.yml RGT
버전 '3.7 ' 이후 # 도커 스택 3.0 이상이 필요합니다 : 서비스 레지스트리 - SRV : # 서비스 이름의 이미지 : 레지스트리 포트 : # 매핑 포트 - 5000 : 5000 볼륨 : # 경로와 실제를 수정하는 미러 경로와 구성 파일에주의 마운트를 일치 - / 옵션 / ZWX - 레지스트리의 경우 : / var / lib 디렉토리 / 레지스트리 - /opt/zwx-registry/srv-config.yml:/etc/docker/registry/ config.yml 배포 : # 단일 작업을 설정, 마스터 노드 및 제약 실행 모드 : 복제 복제본 : 1 배치 : 구속 (Constraints) : - == node.role 관리자 레지스트리 - 웹 : # 서비스 이름 이미지 : 하이퍼 / 도커-registry- 웹 포트 : # 매핑 포트 - 8000 : 8080 볼륨 : #은 실제와 일치하는 경로를 수정하기 위해 구성 파일에주의 마운트를 - /opt/zwx-registry/web-config.yml:/ conf의 / config.yml 환경 : - REGISTRY_URL = HTTP : // 레지스트리 SRV- : 5000 / V2 - REGISTRY_NAME = 로컬 호스트 : 5000 배포 : # 단일 작업 마스터 노드와 제약 실행 설정 모드 : 복제에 복제본 : 1. 배치 : 제약 : - == node.role 관리자
저자 : Leozhang GG
출처 : https://www.cnblogs.com/leozhanggg/p/12050322.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。