docker 개인 창고
3997 단어 dockerdockerfile개인 창고Docker
Docker Hub 와 같은 공공 창 고 를 사용 하 는 것 이 불편 할 때 가 있 습 니 다.사용 자 는 개인 적 으로 사용 할 수 있 는 로 컬 창 고 를 만 들 수 있 습 니 다.
이 절 은 현지 창 고 를 어떻게 사용 하 는 지 소개 한다.
docker-registry 는 공식 적 으로 제공 하 는 도구 로 개인 미 러 창 고 를 구축 할 수 있 습 니 다.본 논문 의 내용 은 docker-registry v2.x 버 전 을 바탕 으로 한다.
docker-registry 용 기 를 설치 하여 실행 하면 공식 registry 미 러 를 가 져 와 서 실행 할 수 있 습 니 다.
4.567914.이것 은 공식 registry 미 러 를 사용 하여 개인 창 고 를 시작 합 니 다.기본적으로 창 고 는 용기 의/var/lib/registry 디 렉 터 리 에 생 성 됩 니 다.로 컬 지정 한 경로 에 미 러 파일 을-v 인 자 를 통 해 저장 할 수 있 습 니 다.예 를 들 어 아래 의 예 는 업 로드 된 미 러 를 로 컬/opt/data/registry 디 렉 터 리 에 놓 습 니 다.
$ docker run -d \
-p 5000:5000 \
-v /opt/data/registry:/var/lib/registry \
registry
개인 창고 에 미 러 를 업로드,검색,다운로드 하여 개인 창 고 를 만 든 후 docker tag 를 사용 하여 미 러 를 표시 하고 창고 로 전송 할 수 있 습 니 다.예 를 들 어 사유 창고 의 주 소 는 127.0.0.1:5000 이다.
먼저 이 컴퓨터 에서 기 존의 미 러 를 살 펴 보 세 요.
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest ba5877dc9bec 6 weeks ago 192.7 MB
docker tag 를 사용 하여 ubuntu:latest 이 미 러 를 127.0.0.1:5000/ubuntu:latest 로 표시 합 니 다.
docker tag IMAGE[:TAG][REGISTRYHOST[:REGISTRY_PORT]/]REPOSITORY[:TAG]。
$ docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest ba5877dc9bec 6 weeks ago 192.7 MB
127.0.0.1:5000/ubuntu:latest latest ba5877dc9bec 6 weeks ago 192.7 MB
docker push 를 사용 하여 표 시 된 미 러 를 업로드 합 니 다.
$ docker push 127.0.0.1:5000/ubuntu:latest
The push refers to repository [127.0.0.1:5000/ubuntu]
373a30c24545: Pushed
a9148f5200b0: Pushed
cdd3de0940ab: Pushed
fc56279bbb33: Pushed
b38367233d37: Pushed
2aebd096e0e2: Pushed
latest: digest: sha256:fe4277621f1026266932ddf760f5a756d2facd505a94d2da12f4f52f71f5a size: 1568
창고 에 있 는 거울 을 curl 로 확인 합 니 다.
$ curl 127.0.0.1:5000/v2/_catalog
{"repositories":["ubuntu"]}
여기 서{"reposcories":["ubuntu"]}을 볼 수 있 습 니 다.미 러 가 성공 적 으로 업로드 되 었 음 을 나타 냅 니 다.
이미 있 는 미 러 를 삭제 하고 개인 창고 에서 이 미 러 를 다운로드 하려 고 합 니 다.
$ docker image rm 127.0.0.1:5000/ubuntu:latest
$ docker pull 127.0.0.1:5000/ubuntu:latest
Pulling repository 127.0.0.1:5000/ubuntu:latest
ba5877dc9bec: Download complete
511136ea3c5a: Download complete
9bad880da3d2: Download complete
25f11f5fb0cb: Download complete
ebc34468f71d: Download complete
2318d26665ef: Download complete
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
127.0.0.1:5000/ubuntu:latest latest ba5877dc9bec 6 weeks ago 192.7 MB
주의 사항
만약 당신 이 127.0.0.1:5000 을 창고 주소 로 사용 하고 싶 지 않다 면,예 를 들 어 본 네트워크 의 다른 호스트 도 미 러 를 개인 창고 로 보 낼 수 있 도록 하려 고 합 니 다.너 는 예 를 들 어 192.168.99.100:5000 과 같은 내부 네트워크 주 소 를 사유 창고 주소 로 해 야 한다.이때 너 는 미 러 를 성공 적 으로 푸 시 할 수 없다 는 것 을 알 게 될 것 이다.
Docker 가 기본적으로 비 HTTPS 방식 으로 미 러 를 푸 시 하 는 것 을 허용 하지 않 기 때문이다.Docker 설정 옵션 을 통 해 이 제한 을 취소 하거나 HTTPS 를 통 해 접근 할 수 있 는 개인 창 고 를 볼 수 있 습 니 다.
Ubuntu 16.04+,Debian 8+,centos 7 은 systemd 를 사용 하 는 시스템 에 대해/etc/docker/daemon.json 에 다음 내용 을 기록 하 십시오(파일 이 존재 하지 않 는 다 면 새 파일 을 만 드 십시오)
{
"registry-mirror": [
"https://dockerhub.azk8s.cn"
],
"insecure-registries": [
"192.168.199.100:5000"
]
}
메모:이 파일 은 json 규범 에 부합 되 어야 합 니 다.그렇지 않 으 면 Docker 가 시작 할 수 없습니다.
다른 Docker Desktop for Windows,Docker Desktop for Mac 은 설정 한 Docker Engine 에서 편집 하고 위 와 같은 문자열 을 추가 하면 됩 니 다.링크:https://blog.51cto.com/14320361/2458049링크:https://yeasy.gitbooks.io/docker_practice/content/repository/registry.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swarm의 도커 비밀이 게시물에서는 Redis를 사용한 실제 시나리오 예제를 제공하여 사용 방법을 보여주고자 합니다. Docker 기술에 대한 기본 지식 Docker Swarm 오케스트레이터에 대한 기본 지식 "Docker Swarm ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.