컴퓨터 지식 네트워크 - 컴퓨터 백과사전 - Docker 오픈소스 웨어하우스를 사용하여 프록시 캐시 웨어하우스를 구축하는 방법

Docker 오픈소스 웨어하우스를 사용하여 프록시 캐시 웨어하우스를 구축하는 방법

오픈 소스 Docker 저장소 v2의 최신 기능 중 하나: Docker Hub에서 이미지를 캐시하는 프록시 캐시 저장소로 사용할 수 있습니다. 캐시 저장소를 실행하면 이미지를 로컬에 저장하고 인터넷을 통해 Docker Hub에서 이미지를 가져올 필요성을 줄일 수 있습니다. 이 기능은 해당 환경에 Docker 엔진이 많은 일부 사용자에게 유용합니다. 이 튜토리얼을 따르면 각 엔진이 항상 Docker Hub에서 이미지를 가져오는 대신 Docker 엔진이 로컬 프록시 캐시 저장소에서 이미지를 가져오도록 하여 시간과 대역폭을 절약할 수 있습니다.

다음과 같이 시작할 수 있습니다:

####Requirements:

- Docker 엔진 1.8.3

- Docker 저장소 v2

- Docker 이미지를 저장할 충분한 디스크 공간

- TLS 인증서 및 키

영구 데이터

이 예에서는 모든 영구 데이터를 로컬 파일 시스템의 /data 경로에 저장한다고 가정합니다. 이 경로에는 TLS 인증서와 키 파일, 구성 파일 및 이미지 캐시 파일이 포함됩니다. 나중에 볼륨을 사용하여 리포지토리를 실행하는 컨테이너에 이 디렉터리를 마운트합니다.

프록시 캐시 저장소 보호

프록시 캐시 저장소에는 Docker 엔진과 캐시 저장소 간의 연결을 보호하기 위해 TLS 인증서가 필요합니다. 이 예에서는 인증서를 배치합니다. 파일(domain.crt)과 키 파일(domain.key)은 호스트의 /data 디렉터리에 있습니다.

TLS를 사용하여 웨어하우스 보안을 강화하는 방법에 대한 자세한 내용은 Docker Warehouse 2.0 설명서를 참조하세요.

프록시 캐시 저장소 구성 파일 생성

다음으로 이 저장소를 프록시 캐시로 사용하기 위한 구성 파일을 생성해야 합니다. cat 명령을 사용하여 registry:2 이미지에 있는 기본 구성 파일의 출력을 파일로 리디렉션할 수 있습니다:

sh

$ docker run - it --rm --entrypoint cat Registry:2 \

/etc/docker/registry/config.yml > /data/config.yml

강력히 추천합니다 이 기본 구성은 나중에 업데이트될 수 있으므로 예제의 구성을 사용하는 대신 Docker 이미지에서 이 기본 구성 가져오기부터 시작하세요.

기본 config.yml 예:

yaml

버전: 0.1

log:

필드

서비스: 레지스트리

저장소:

캐시:

layerinfo: 메모리 내

파일 시스템:

루트 디렉터리: /var/lib/registry

/docker/dist ... 또는.md )

yaml

프록시:

remoteurl: :5000/v2/

HTTP/1.1 200 OK

콘텐츠 길이: 2

콘텐츠 유형: 애플리케이션 / json; charset=utf-8

Docker-Distribution-Api-Version: Registry/2.0

날짜: 2015년 9월 17일 목요일 21:42:02 GMT

프록시 캐시 저장소를 사용하도록 Docker 엔진을 구성하세요.

Docker 데몬의 시작 매개변수를 수정하고 --registry-mirror 옵션을 추가하세요.

sh

--registry-mirror=웨어하우스 서비스 포트가 5000이고 데몬 프로세스의 매개변수에 다음 옵션을 추가해야 합니다.

sh

-- Registry-mirror=:5000

Docker 데몬 매개변수를 추가하는 방법에 대한 자세한 내용은 다양한 Linux 배포판에서 실행되도록 Docker 구성을 참조하세요.

프록시 캐시 저장소를 테스트하세요

로컬에 없는 Docker Hub에서 이미지를 가져옵니다. 예: busybox:latest image:

sh

$ docker pull busybox:latest

비지박스 이미지가 최신인지 확인하려면 캐시 웨어하우스의 디렉터리를 확인하세요. 캐시됨:

sh

$ 컬 :5000/v2/_catalog

{"repositories":["library/busybox"]}

또한 최신 태그가 캐시되었는지 확인할 수도 있습니다:

sh

$curl :5000/v2/library/busybox/tags/list

{"name": "library/busybox","tags":["latest"]}

이제 이미지를 가져오면 이미지가 프록시 캐시 저장소에 캐시됩니다. 나중에 동일한 이미지가 더 빨라지고 이러한 이미지 캐시는 자체적으로 유지되며 더 이상 사용되지 않으면 자동으로 지워집니다.

上篇: 휴대전화 번호를 사용하여 내부 회사 그룹에 사람을 추가하는 방법 下篇: 두 달 동안 남자친구가 QQ 비밀번호를 알려줬는데, 음부 사진이 있는 걸 발견했어요.
관련 내용